Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  monoid_pkg.tst   Sprache: unbekannt

 
Spracherkennung für: .tst vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

#############################################################################
##
#W  extreme/monoid_pkg.tst
#Y  Copyright (C) 2011-15                                James D. Mitchell
##
##  Licensing information can be found in the README file of this package.
#
#############################################################################
##
## a concatenation of relevant tests from the monoid/tst.

#@local BigMonoids, C, D, H, I, M, S, SmallMonoids, T, a, acting, b, c, c3, c4
#@local cs1, cs2, cs3, cs4, cs5, d, dc, dr, f, g, g1, g2, g3, g4, g5, g6, g7
#@local g8, g9, gens, gr, h, i, idem, iso, m, m1, m10, m11, m12, m13, m14, m15
#@local m16, m17, m18, m19, m2, m20, m21, m22, m23, m3, m4, m5, m6, m7, m8, m9
#@local mat, o, r, r2, rc, res, rms, s, semis, sizes, t, x
gap> START_TEST("Semigroups package: extreme/monoid_pkg.tst");
gap> LoadPackage("semigroups", false);;

#
gap> SEMIGROUPS.StartTest();
gap> SEMIGROUPS.DefaultOptionsRec.acting := true;;

# MonoidPkgTest2
gap> g := CyclicGroup(3);;
gap> r := GF(2);;
gap> gr := GroupRing(r, g);;
gap> iso := IsomorphismTransformationSemigroup(gr);;
gap> s := Range(iso);;
gap> Size(s);
8
gap> SmallGeneratingSet(s);;
gap> s := Semigroup(IrredundantGeneratingSubset(last));;
gap> NrDClasses(s);
4
gap> sizes := List(GreensDClasses(s), Size);;
gap> Sort(sizes);;
gap> sizes;
1133 ]
gap> PartialOrderOfDClasses(s);
<immutable digraph with 4 vertices, 4 edges>
gap> IsRegularSemigroup(s);
true
gap> ForAll(s, x -> x in s);
true
gap> MultiplicativeNeutralElement(s);
IdentityTransformation
gap> h := List(s, x -> InversesOfSemigroupElement(s, x));;
gap> Sort(h);
gap> h;
[ [ Transformation( [ 11111111 ] ) ],
  [ IdentityTransformation ], [ Transformation( [ 13517735 ] ) ]
    , [ Transformation( [ 14141414 ] ) ],
  [ Transformation( [ 15713357 ] ) ],
  [ Transformation( [ 16743852 ] ) ],
  [ Transformation( [ 17315573 ] ) ],
  [ Transformation( [ 18547236 ] ) ] ]
gap> IsMonoidAsSemigroup(s);
true
gap> IsGroupAsSemigroup(s);
false
gap> i := MinimalIdeal(s);
<simple transformation semigroup ideal of degree 8 with 1 generator>
gap> Size(i);
1
gap> MultiplicativeZero(s);
Transformation( [ 11111111 ] )
gap> MultiplicativeZero(s) in i;
true
gap> h := List(GreensDClasses(s), GroupHClass);;
gap> h := List(h, StructureDescription);;
gap> Sort(h);
gap> h;
[ "1", "1", "C3", "C3" ]
gap> IsCliffordSemigroup(s);
true

# MonoidPkgTest3
gap> a := Idempotent([35678], [12112345]) * (35);;
gap> b := a * (35) * (3678);;
gap> s := Semigroup(a, b);;
gap> IsGroupAsSemigroup(s);
true

# MonoidPkgTest4
gap> gens := [Transformation([353356]),
> Transformation([624226])];;
gap> S := Semigroup(gens);;
gap> H := GroupHClass(GreensDClassOfElement(S, Elements(S)[1]));
<Green's H-class: Transformation( [ 622226 ] )>
gap> Transformation([622226]) in H;
true
gap> IsomorphismPermGroup(H);
MappingByFunction( <Green's H-class: Transformation( [ 622226 ] )>
 , Group(()), function( x ) ... end, function( x ) ... end )

# MonoidPkgTest5
gap> gens := [Transformation([44888848]),
>   Transformation([82825588]),
>   Transformation([88378378]),
>   Transformation([86686888])];;
gap> S := Semigroup(gens);;
gap> Size(S);
30
gap> NrDClasses(S);
6
gap> List(GreensDClasses(S), Size);
911919 ]
gap> IsRegularSemigroup(S);
false
gap> NrRClasses(S);
12
gap> NrLClasses(S);
12
gap> IsBlockGroup(S);
false
gap> NrIdempotents(S);
15
gap> List(GreensDClasses(S), IsRegularDClass);
[ true, true, true, true, true, false ]
gap> d := GreensDClasses(S)[2];;
gap> GreensRClasses(d);;
gap> GreensLClasses(d);;
gap> SchutzenbergerGroup(d);
Group(())
gap> h := List(GreensDClasses(S), function(d) if IsRegularDClass(d)
> then return GroupHClass(d); else return fail; fi; end);;
gap> MultiplicativeNeutralElement(S);
fail
gap> IsMonoidAsSemigroup(S);
false
gap> GroupOfUnits(S);
fail
gap> MultiplicativeZero(S);
Transformation( [ 88888888 ] )
gap> h := Filtered(h, x -> not x = fail);
[ <Green's H-class: Transformation( [ 22888828 ] )>,
  <Green's H-class: Transformation( [ 82825588 ] )>,
  <Green's H-class: Transformation( [ 88378378 ] )>,
  <Green's H-class: Transformation( [ 85585888 ] )>,
  <Green's H-class: Transformation( [ 88888888 ] )> ]
gap> List(h, StructureDescription);
[ "1", "1", "1", "1", "1" ]
gap> IsHTrivial(S);
true
gap> IsLTrivial(S);
false
gap> IsRTrivial(S);
false
gap> NrIdempotents(S);
15
gap> IsIdempotentGenerated(S);
true
gap> IsSemiband(S);
true
gap> IsCommutative(S);
false
gap> IsBand(S);
false

# MonoidPkgTest6: from greens.tst
gap> gens := [Transformation([45718617]),
>  Transformation([55383746]),
>  Transformation([57441444]),
>  Transformation([71436137])];;
gap> m := Semigroup(gens);;
gap> o := LambdaOrb(m);; Enumerate(o);;
gap> AsSet(o);
[ [ 0 ], [ 1 ], [ 13 ], [ 134 ], [ 13467 ], [ 1347 ],
  [ 136 ], [ 1367 ], [ 137 ], [ 14 ], [ 145 ],
  [ 145678 ], [ 1457 ], [ 146 ], [ 1467 ],
  [ 14678 ], [ 147 ], [ 148 ], [ 16 ], [ 167 ],
  [ 1678 ], [ 168 ], [ 17 ], [ 178 ], [ 18 ], [ 3 ],
  [ 34 ], [ 345 ], [ 345678 ], [ 3457 ],
  [ 34578 ], [ 3458 ], [ 346 ], [ 3467 ],
  [ 34678 ], [ 3468 ], [ 347 ], [ 3478 ],
  [ 348 ], [ 35 ], [ 357 ], [ 358 ], [ 36 ], [ 367 ],
  [ 3678 ], [ 368 ], [ 37 ], [ 378 ], [ 38 ], [ 4 ],
  [ 45 ], [ 456 ], [ 4567 ], [ 45678 ], [ 457 ],
  [ 4578 ], [ 458 ], [ 46 ], [ 467 ], [ 468 ], [ 47 ],
  [ 478 ], [ 48 ], [ 5 ], [ 56 ], [ 567 ], [ 568 ], [ 57 ],
  [ 578 ], [ 58 ], [ 6 ], [ 67 ], [ 678 ], [ 68 ], [ 7 ],
  [ 78 ], [ 8 ] ]
gap> gens := [Transformation([1522352]),
>  Transformation([7365241]),
>  Transformation([7532556])];;
gap> m := Monoid(gens);;
gap> o := LambdaOrb(m);; Enumerate(o);; AsSet(o);
[ [ 0 ], [ 12 ], [ 123 ], [ 12345 ], [ 1234567 ],
  [ 12346 ], [ 1235 ], [ 12356 ], [ 1236 ],
  [ 124 ], [ 1245 ], [ 12456 ], [ 125 ], [ 126 ],
  [ 13 ], [ 134 ], [ 13456 ], [ 1346 ], [ 135 ],
  [ 136 ], [ 14 ], [ 145 ], [ 1456 ], [ 146 ], [ 15 ],
  [ 156 ], [ 16 ], [ 2 ], [ 23 ], [ 234 ], [ 2345 ],
  [ 23457 ], [ 2346 ], [ 23467 ], [ 235 ],
  [ 2356 ], [ 23567 ], [ 2357 ], [ 236 ],
  [ 2367 ], [ 237 ], [ 24 ], [ 245 ], [ 2456 ],
  [ 24567 ], [ 2457 ], [ 246 ], [ 247 ], [ 25 ],
  [ 256 ], [ 257 ], [ 26 ], [ 267 ], [ 27 ], [ 3 ], [ 34 ],
  [ 345 ], [ 3456 ], [ 34567 ], [ 346 ],
  [ 3467 ], [ 347 ], [ 35 ], [ 356 ], [ 357 ], [ 36 ],
  [ 367 ], [ 37 ], [ 4 ], [ 45 ], [ 456 ], [ 4567 ],
  [ 457 ], [ 46 ], [ 467 ], [ 47 ], [ 5 ], [ 56 ], [ 567 ],
  [ 57 ], [ 6 ], [ 67 ] ]
gap> Length(Enumerate(RhoOrb(m)));
207
gap> gens := [[Transformation([3443115])],
> [Transformation([1143]), Transformation([2222]),
> Transformation([3314])], [Transformation([44233]),
> Transformation([52431])],
> [Transformation([15415]), Transformation([24131])],
> [Transformation([4123]), Transformation([4341])],
> [Transformation([213143]),
>   Transformation([222212]),
>   Transformation([534356]),
>   Transformation([641453]),
> Transformation([652634])],
> [Transformation([3551475])],
> [Transformation([256113]),
> Transformation([316252]),
> Transformation([542335]),
> Transformation([665522])],
> [Transformation([15323]), Transformation([43252]),
>   Transformation([54122]), Transformation([55511])],
> [Transformation([2447212])],
> [Transformation([3424674]),
>   Transformation([4632454]),
>   Transformation([6235522]),
>   Transformation([6545244]),
>   Transformation([7675657])],
>  [Transformation([32331]),
> Transformation([45124])],
>  [Transformation([1434]), Transformation([2211]),
>    Transformation([3134]), Transformation([4431])],
> [Transformation([12233]), Transformation([43432]),
>   Transformation([53454])],
> [Transformation([436461]),
>   Transformation([444631])],
> [Transformation([1434]), Transformation([3333]),
>   Transformation([3414]), Transformation([4314])],
> [Transformation([13352]), Transformation([34511])],
> [Transformation([264652]),
>   Transformation([356251]),
>   Transformation([513331]),
>   Transformation([644663])],
> [Transformation([1333])],
> [Transformation([41223]), Transformation([42322])],
> [Transformation([1464472]),
>   Transformation([1651727]),
>   Transformation([2272144]),
>   Transformation([5626335])],
> [Transformation([1131]), Transformation([4234]),
>   Transformation([4422])], [Transformation([3211]),
>   Transformation([4132]), Transformation([4412])],
> [Transformation([1642532]),
> Transformation([4147445])],
>   [Transformation([24544])],
>   [Transformation([1423]), Transformation([4333])],
>   [Transformation([11314])],
>   [Transformation([4336723]),
>   Transformation([6644214])],
>   [Transformation([224643]),
>   Transformation([341152]),
>   Transformation([446461])],
>   [Transformation([3542122]),
>   Transformation([7715716])],
>   [Transformation([3414]), Transformation([4322]),
>   Transformation([4414])],
>   [Transformation([3744335]),
>   Transformation([4611641]),
>   Transformation([6572113])],
>   [Transformation([1241]), Transformation([4121]),
>   Transformation([4224])],
>   [Transformation([2122]), Transformation([2411]),
>   Transformation([4243]), Transformation([4412])],
>   [Transformation([111114]),
>   Transformation([332413]),
>   Transformation([452445]),
>   Transformation([532664]),
>   Transformation([665511])],
>   [Transformation([1241]), Transformation([2412]),
>   Transformation([3314]), Transformation([3412]),
>   Transformation([4143])],
>   [Transformation([1761755]),
>   Transformation([2714762]),
>   Transformation([4372634]),
>   Transformation([4721754]),
>   Transformation([5755535])],
>   [Transformation([2443])],
>   [Transformation([465144])],
>   [Transformation([23453]), Transformation([41513]),
>   Transformation([41553])],
>   [Transformation([13122]), Transformation([23524]),
>   Transformation([24325]), Transformation([44212])],
>   [Transformation([1424]), Transformation([2214]),
>   Transformation([3222])],
>   [Transformation([15115]),
> Transformation([43132])],
>   [Transformation([1344]), Transformation([2133]),
> Transformation([4134]), Transformation([4233])],
>   [Transformation([4322142]),
>   Transformation([6527227])],
>   [Transformation([2443]), Transformation([3413]),
>   Transformation([4132]), Transformation([4411])],
>   [Transformation([12521]), Transformation([32242]),
>   Transformation([45112]), Transformation([55521])],
>   [Transformation([1244]), Transformation([2121]),
>   Transformation([2323]), Transformation([3213]),
>   Transformation([3432])],
>   [Transformation([11122])],
>   [Transformation([443332]),
>   Transformation([463643]),
>   Transformation([641345])],
>   [Transformation([1143]), Transformation([3132])],
>   [Transformation([13533]), Transformation([15443]),
>  Transformation([25311])],
>   [Transformation([3234]), Transformation([3431]),
>  Transformation([3444]), Transformation([4313])],
>   [Transformation([225225]),
> Transformation([265263]),
> Transformation([424556]),
>       Transformation([541422])],
> [Transformation([1134]), Transformation([3122])],
>   [Transformation([114553]),
> Transformation([644565])],
>  [Transformation([1453173]),
>  Transformation([1665242])],
>   [Transformation([33123]), Transformation([55153]),
>  Transformation([55552])],
>   [Transformation([125156]),
>   Transformation([545532])],
>   [Transformation([1213]), Transformation([2344]),
>  Transformation([4111])],
>  [Transformation([12232]), Transformation([43241]),
> Transformation([51221]), Transformation([52414]),
> Transformation([55422])],
> [Transformation([2123]), Transformation([2232])],
> [Transformation([4213])],
>   [Transformation([1234]), Transformation([2234]),
> Transformation([2243])],
>   [Transformation([2121]), Transformation([3424])],
>   [Transformation([341222]),
>   Transformation([444253]),
>   Transformation([566554])],
>   [Transformation([141646]),
>   Transformation([242556]),
>   Transformation([362146]),
>   Transformation([462412])],
>   [Transformation([1333]), Transformation([2131]),
>   Transformation([3123])],
>   [Transformation([1412]), Transformation([2232]),
>   Transformation([3343]), Transformation([4334]),
>   Transformation([4442])],
>   [Transformation([1214]), Transformation([4112]),
>   Transformation([4332])],
>   [Transformation([2367126])],
>   [Transformation([411333])],
>   [Transformation([3327551]),
>   Transformation([3554132]),
>   Transformation([4136665]),
>   Transformation([7272772])],
>   [Transformation([1175212]),
>   Transformation([2726757]),
>   Transformation([4574314])],
>   [Transformation([3644251]),
>   Transformation([4125773]),
>   Transformation([4411627]),
>   Transformation([5766145])],
>   [Transformation([1112]), Transformation([1313]),
>   Transformation([1433]), Transformation([3111]),
>   Transformation([4234])],
>   [Transformation([133213]),
>   Transformation([155652]),
>   Transformation([631155]),
>   Transformation([631524])],
>   [Transformation([261315]),
>   Transformation([433555]),
>   Transformation([456442]),
>   Transformation([635414])],
>   [Transformation([31223]), Transformation([32125]),
>       Transformation([33424])],
>   [Transformation([1716653]),
>   Transformation([2656156]),
>   Transformation([3461516]),
>   Transformation([7572574])],
>   [Transformation([21224]),
>   Transformation([21413]),
>   Transformation([33132]),
>   Transformation([54545])],
>   [Transformation([2143]), Transformation([2344]),
>   Transformation([3311])],
>   [Transformation([2112])],
>   [Transformation([13133]), Transformation([21141]),
>   Transformation([45154]), Transformation([54342]),
>   Transformation([55534])],
>   [Transformation([55555])],
>   [Transformation([321266]),
>   Transformation([621432])],
>   [Transformation([3442472]),
>   Transformation([4177713]),
>   Transformation([5554434]),
>   Transformation([6663672]),
>   Transformation([7751723])],
>   [Transformation([1533122]),
>   Transformation([3416345]),
>   Transformation([4121675]),
>   Transformation([4272411]),
>   Transformation([7771544])],
>   [Transformation([132655]),
>   Transformation([312562]),
>   Transformation([551535]),
>   Transformation([661562])],
>   [Transformation([143343]),
>   Transformation([312525]),
>   Transformation([321654]),
>   Transformation([521131]),
>   Transformation([641111])],
>   [Transformation([42334])],
>   [Transformation([1444315]),
>   Transformation([4736176])],
>   [Transformation([4357716])],
>   [Transformation([2241])],
>   [Transformation([112646]),
>   Transformation([423122]),
>   Transformation([424365])],
>   [Transformation([2364746]),
>   Transformation([4432646]),
>   Transformation([4665467]),
>   Transformation([5616351])],
>   [Transformation([11531]),
>   Transformation([22423]),
>   Transformation([23445]),
>   Transformation([24245])],
>   [Transformation([31153]),
> Transformation([33531])],
>   [Transformation([433525]),
>   Transformation([612413])],
>   [Transformation([23433]), Transformation([35242]),
>   Transformation([35252]),
> Transformation([53352])]];;
gap> semis := List(gens, Semigroup);;
gap> res := List(semis, x -> [NrRClasses(x), Size(x)]);
[ [ 34 ], [ 210 ], [ 314 ], [ 12211 ], [ 428 ], [ 3784818 ],
  [ 25 ], [ 927142 ], [ 81615 ], [ 24 ], [ 1582255 ], [ 1899 ],
  [ 950 ], [ 1676 ], [ 1777 ], [ 613 ], [ 19330 ], [ 1201263 ],
  [ 11 ], [ 1453 ], [ 2161306 ], [ 612 ], [ 15235 ], [ 23235 ],
  [ 22 ], [ 39 ], [ 22 ], [ 17206 ], [ 22506 ], [ 24340 ],
  [ 739 ], [ 99495 ], [ 1018 ], [ 10100 ], [ 34843 ], [ 14210 ],
  [ 5463538 ], [ 23 ], [ 23 ], [ 35448 ], [ 21515 ], [ 914 ],
  [ 511 ], [ 1723 ], [ 28763 ], [ 15199 ], [ 21170 ], [ 11142 ],
  [ 22 ], [ 331259 ], [ 625 ], [ 64426 ], [ 940 ], [ 46388 ],
  [ 625 ], [ 1149 ], [ 48391 ], [ 740 ], [ 1318 ], [ 648 ],
  [ 30792 ], [ 711 ], [ 13 ], [ 23 ], [ 817 ], [ 15115 ],
  [ 491724 ], [ 845 ], [ 646 ], [ 866 ], [ 24 ], [ 13 ],
  [ 3224344 ], [ 30661 ], [ 159763890 ], [ 1076 ], [ 1739084 ],
  [ 743931 ], [ 15117 ], [ 1634804 ], [ 14106 ], [ 1028 ],
  [ 12 ], [ 53328 ], [ 11 ], [ 1726 ], [ 1721443 ], [ 23015176 ],
  [ 831382 ], [ 1581074 ], [ 22 ], [ 26535 ], [ 36 ], [ 33 ],
  [ 441834 ], [ 1581776 ], [ 19326 ], [ 945 ], [ 32379 ],
  [ 23149 ] ]
gap> m := semis[32];;
gap> Size(m);
495
gap> ForAll(GreensRClasses(m), x -> ForAll(Idempotents(x), y -> y in x));
true
gap> idem := Set(Concatenation(List(GreensRClasses(m), Idempotents)));
[ Transformation( [ 1111111 ] ),
  Transformation( [ 111111 ] ),
  Transformation( [ 1114111 ] ),
  Transformation( [ 1131111 ] ),
  Transformation( [ 1131113 ] ),
  Transformation( [ 113111 ] ),
  Transformation( [ 1133111 ] ),
  Transformation( [ 1133113 ] ),
  Transformation( [ 113311 ] ),
  Transformation( [ 113666 ] ),
  Transformation( [ 1144111 ] ),
  Transformation( [ 1144114 ] ),
  Transformation( [ 1171117 ] ),
  Transformation( [ 1177117 ] ),
  Transformation( [ 1211111 ] ),
  Transformation( [ 1211112 ] ),
  Transformation( [ 121111 ] ),
  Transformation( [ 1222112 ] ),
  Transformation( [ 1222212 ] ),
  Transformation( [ 123311 ] ),
  Transformation( [ 1277117 ] ),
  Transformation( [ 1333113 ] ),
  Transformation( [ 1333313 ] ),
  Transformation( [ 1444114 ] ),
  Transformation( [ 1444414 ] ),
  Transformation( [ 1555515 ] ),
  Transformation( [ 1711117 ] ),
  Transformation( [ 1733117 ] ),
  Transformation( [ 1777117 ] ),
  Transformation( [ 1777717 ] ),
  Transformation( [ 2222222 ] ),
  Transformation( [ 222222 ] ),
  Transformation( [ 2272227 ] ),
  Transformation( [ 2277227 ] ),
  Transformation( [ 3333333 ] ),
  Transformation( [ 333333 ] ),
  Transformation( [ 3334333 ] ),
  Transformation( [ 3733337 ] ),
  Transformation( [ 4434443 ] ),
  Transformation( [ 4434444 ] ),
  Transformation( [ 4444444 ] ),
  Transformation( [ 5333553 ] ),
  Transformation( [ 5444554 ] ),
  Transformation( [ 5533553 ] ),
  Transformation( [ 5533555 ] ),
  Transformation( [ 553355 ] ),
  Transformation( [ 5534553 ] ),
  Transformation( [ 5534555 ] ),
  Transformation( [ 553455 ] ),
  Transformation( [ 5535553 ] ),
  Transformation( [ 5535555 ] ),
  Transformation( [ 553555 ] ),
  Transformation( [ 5544554 ] ),
  Transformation( [ 5544555 ] ),
  Transformation( [ 5554555 ] ),
  Transformation( [ 5555555 ] ),
  Transformation( [ 555555 ] ),
  Transformation( [ 5575557 ] ),
  Transformation( [ 5577557 ] ),
  Transformation( [ 5733557 ] ),
  Transformation( [ 5755557 ] ),
  Transformation( [ 5777557 ] ),
  Transformation( [ 6222262 ] ),
  Transformation( [ 6222662 ] ),
  Transformation( [ 6266662 ] ),
  Transformation( [ 6266666 ] ),
  Transformation( [ 6333363 ] ),
  Transformation( [ 6333663 ] ),
  Transformation( [ 6444464 ] ),
  Transformation( [ 6444664 ] ),
  Transformation( [ 6555565 ] ),
  Transformation( [ 6633663 ] ),
  Transformation( [ 6633666 ] ),
  Transformation( [ 663366 ] ),
  Transformation( [ 6636663 ] ),
  Transformation( [ 6636666 ] ),
  Transformation( [ 663666 ] ),
  Transformation( [ 6644664 ] ),
  Transformation( [ 6644666 ] ),
  Transformation( [ 6664666 ] ),
  Transformation( [ 6666666 ] ),
  Transformation( [ 666666 ] ),
  Transformation( [ 6676667 ] ),
  Transformation( [ 6677667 ] ),
  Transformation( [ 6733667 ] ),
  Transformation( [ 6766667 ] ),
  Transformation( [ 6777667 ] ),
  Transformation( [ 6777767 ] ),
  Transformation( [ 7277777 ] ),
  Transformation( [ 7733777 ] ),
  Transformation( [ 7737777 ] ),
  Transformation( [ 7777777 ] ) ]
gap> idem = Set(Idempotents(m));
true
gap> H := GreensHClasses(m);;
gap> I := Concatenation(List(GreensRClasses(m), GreensHClasses));;
gap> ForAll(H, x -> Number(I, y -> Representative(x) in y) = 1);
true
gap> m := semis[68];;
gap> H := GreensHClasses(m);;
gap> I := Concatenation(List(GreensRClasses(m), GreensHClasses));;
gap> ForAll(H, x -> Number(I, y -> Representative(x) in y) = 1);
true
gap> m := semis[74];;
gap> r := GreensRClassOfElement(m, Transformation([2122121]));;
gap> d := DClassOfRClass(r);;
gap> dr := GreensRClasses(d);;
gap> r2 := First(dr, x -> x = r);;
gap> DClassOfRClass(r2) = d;
true
gap> m := Semigroup(GeneratorsOfSemigroup(m));
<transformation semigroup of degree 7 with 3 generators>
gap> r := GreensRClassOfElement(m, Transformation([2122121]));;
gap> d := DClassOfRClass(r);;
gap> dr := GreensRClasses(d);;
gap> r2 := First(dr, x -> x = r);;
gap> DClassOfRClass(r2) = d;
true
gap> res := List(semis, x -> [Length(GreensLClasses(x)), Size(x)]);
[ [ 34 ], [ 510 ], [ 214 ], [ 19211 ], [ 928 ], [ 464818 ],
  [ 25 ], [ 397142 ], [ 25615 ], [ 24 ], [ 7892255 ], [ 2199 ],
  [ 1150 ], [ 2576 ], [ 4277 ], [ 1013 ], [ 23330 ], [ 871263 ],
  [ 11 ], [ 2453 ], [ 1951306 ], [ 912 ], [ 15235 ], [ 28235 ],
  [ 22 ], [ 79 ], [ 22 ], [ 18206 ], [ 26506 ], [ 25340 ],
  [ 1039 ], [ 45495 ], [ 1318 ], [ 11100 ], [ 94843 ], [ 15210 ],
  [ 803538 ], [ 23 ], [ 23 ], [ 103448 ], [ 21515 ], [ 1014 ],
  [ 711 ], [ 1423 ], [ 27763 ], [ 14199 ], [ 20170 ], [ 13142 ],
  [ 22 ], [ 301259 ], [ 925 ], [ 23426 ], [ 1740 ], [ 34388 ],
  [ 825 ], [ 1349 ], [ 31391 ], [ 1040 ], [ 1718 ], [ 1248 ],
  [ 68792 ], [ 1011 ], [ 13 ], [ 23 ], [ 817 ], [ 22115 ],
  [ 2011724 ], [ 745 ], [ 1046 ], [ 1166 ], [ 24 ], [ 13 ],
  [ 3634344 ], [ 68661 ], [ 242363890 ], [ 1176 ], [ 579084 ],
  [ 843931 ], [ 12117 ], [ 1564804 ], [ 16106 ], [ 1028 ],
  [ 12 ], [ 52328 ], [ 11 ], [ 2026 ], [ 2571443 ], [ 7415176 ],
  [ 3331382 ], [ 741074 ], [ 22 ], [ 28535 ], [ 36 ], [ 33 ],
  [ 351834 ], [ 931776 ], [ 18326 ], [ 1645 ], [ 25379 ],
  [ 33149 ] ]
gap> ForAll(GreensLClasses(m), x ->
> ForAll(Idempotents(x), y -> y in x));
true
gap> idem := Set(Concatenation(List(GreensLClasses(m), Idempotents)));
[ Transformation( [ 1111111 ] ),
  Transformation( [ 1111511 ] ),
  Transformation( [ 1111515 ] ),
  Transformation( [ 1111551 ] ),
  Transformation( [ 1114111 ] ),
  Transformation( [ 1114141 ] ),
  Transformation( [ 1114414 ] ),
  Transformation( [ 1114515 ] ),
  Transformation( [ 1115515 ] ),
  Transformation( [ 1144111 ] ),
  Transformation( [ 1144414 ] ),
  Transformation( [ 1155515 ] ),
  Transformation( [ 1211111 ] ),
  Transformation( [ 1211211 ] ),
  Transformation( [ 1211212 ] ),
  Transformation( [ 1211222 ] ),
  Transformation( [ 1211511 ] ),
  Transformation( [ 1212212 ] ),
  Transformation( [ 1212222 ] ),
  Transformation( [ 1221111 ] ),
  Transformation( [ 1221121 ] ),
  Transformation( [ 1221221 ] ),
  Transformation( [ 1221551 ] ),
  Transformation( [ 1414414 ] ),
  Transformation( [ 1414444 ] ),
  Transformation( [ 1511511 ] ),
  Transformation( [ 1511515 ] ),
  Transformation( [ 1511555 ] ),
  Transformation( [ 1514545 ] ),
  Transformation( [ 1515515 ] ),
  Transformation( [ 1515555 ] ),
  Transformation( [ 1551551 ] ),
  Transformation( [ 2222222 ] ),
  Transformation( [ 2222262 ] ),
  Transformation( [ 2222522 ] ),
  Transformation( [ 2222525 ] ),
  Transformation( [ 2222552 ] ),
  Transformation( [ 2222662 ] ),
  Transformation( [ 2222727 ] ),
  Transformation( [ 2225525 ] ),
  Transformation( [ 2226262 ] ),
  Transformation( [ 2227727 ] ),
  Transformation( [ 2255525 ] ),
  Transformation( [ 2277727 ] ),
  Transformation( [ 3333333 ] ),
  Transformation( [ 3333533 ] ),
  Transformation( [ 3333535 ] ),
  Transformation( [ 3333553 ] ),
  Transformation( [ 3333737 ] ),
  Transformation( [ 3334333 ] ),
  Transformation( [ 3334343 ] ),
  Transformation( [ 3334434 ] ),
  Transformation( [ 3334535 ] ),
  Transformation( [ 3334737 ] ),
  Transformation( [ 3335535 ] ),
  Transformation( [ 3337737 ] ),
  Transformation( [ 3434434 ] ),
  Transformation( [ 3434444 ] ),
  Transformation( [ 3533533 ] ),
  Transformation( [ 3533535 ] ),
  Transformation( [ 3533555 ] ),
  Transformation( [ 3534545 ] ),
  Transformation( [ 3535535 ] ),
  Transformation( [ 3535555 ] ),
  Transformation( [ 3733737 ] ),
  Transformation( [ 3733777 ] ),
  Transformation( [ 3734747 ] ),
  Transformation( [ 3737737 ] ),
  Transformation( [ 3737777 ] ),
  Transformation( [ 4334334 ] ),
  Transformation( [ 4334434 ] ),
  Transformation( [ 4334444 ] ),
  Transformation( [ 4334554 ] ),
  Transformation( [ 4444444 ] ),
  Transformation( [ 4444544 ] ),
  Transformation( [ 4444545 ] ),
  Transformation( [ 4444554 ] ),
  Transformation( [ 4444747 ] ),
  Transformation( [ 4544544 ] ),
  Transformation( [ 4544545 ] ),
  Transformation( [ 4544555 ] ),
  Transformation( [ 4554554 ] ),
  Transformation( [ 4744747 ] ),
  Transformation( [ 4744777 ] ),
  Transformation( [ 5225525 ] ),
  Transformation( [ 5225555 ] ),
  Transformation( [ 5255555 ] ),
  Transformation( [ 5335535 ] ),
  Transformation( [ 5335555 ] ),
  Transformation( [ 5533555 ] ),
  Transformation( [ 5544555 ] ),
  Transformation( [ 5554545 ] ),
  Transformation( [ 5554555 ] ),
  Transformation( [ 5555555 ] ),
  Transformation( [ 6226666 ] ),
  Transformation( [ 6262262 ] ),
  Transformation( [ 6266262 ] ),
  Transformation( [ 6266266 ] ),
  Transformation( [ 6266666 ] ),
  Transformation( [ 6666666 ] ),
  Transformation( [ 6666767 ] ),
  Transformation( [ 6667767 ] ),
  Transformation( [ 6677767 ] ),
  Transformation( [ 6766767 ] ),
  Transformation( [ 6767767 ] ),
  Transformation( [ 7227227 ] ),
  Transformation( [ 7227557 ] ),
  Transformation( [ 7227667 ] ),
  Transformation( [ 7227727 ] ),
  Transformation( [ 7227777 ] ),
  Transformation( [ 7277277 ] ),
  Transformation( [ 7277577 ] ),
  Transformation( [ 7277777 ] ),
  Transformation( [ 7337337 ] ),
  Transformation( [ 7337737 ] ),
  Transformation( [ 7337777 ] ),
  Transformation( [ 7557557 ] ),
  Transformation( [ 7577577 ] ),
  Transformation( [ 7667667 ] ),
  Transformation( [ 7667767 ] ),
  Transformation( [ 7733777 ] ),
  Transformation( [ 7744777 ] ),
  Transformation( [ 7774747 ] ),
  Transformation( [ 7774777 ] ),
  Transformation( [ 7776767 ] ),
  Transformation( [ 7777557 ] ),
  Transformation( [ 7777577 ] ),
  Transformation( [ 7777667 ] ),
  Transformation( [ 7777767 ] ),
  Transformation( [ 7777777 ] ) ]
gap> idem = Set(Idempotents(m));
true
gap> m := semis[30];;
gap> r := GreensLClassOfElement(m, Transformation([3333335]));;
gap> d := DClassOfLClass(r);;
gap> dr := GreensLClasses(d);;
gap> r2 := First(dr, x -> x = r);;
gap> DClassOfLClass(r2) = d;
true
gap> m := Semigroup(GeneratorsOfSemigroup(m));
<transformation semigroup of degree 7 with 2 generators>
gap>  r := GreensLClassOfElement(m, Transformation([3333335]));
<Green's L-class: Transformation( [ 3333335 ] )>
gap> Transformation([3333335]) in last;
true
gap> d := DClassOfLClass(r);;
gap> dr := GreensLClasses(d);;
gap> r2 := First(dr, x -> x = r);;
gap> DClassOfLClass(r2) = d;
true
gap> List(semis, s -> Length(GreensHClasses(s)));
3537713128121032231213555728485712139508,
  13680110711302728315817222285174037767,
  1285222121531492223965915523671516826207,
  14292742217262531012136460520253321,
  15203079625411885945541297581811731257372807,
  6364952201334717151182819788 ]
gap> ForAll(semis, s ->
> Number(GreensHClasses(s), IsGroupHClass) = Length(Idempotents(s)));
true
gap> List(semis, s -> Number(GreensDClasses(s), IsRegularDClass));
1224361541633433441464441,
  2135535335461144334444314,
  3444436333431224433311537,
  3555523141456551311643343 ]
gap> List(semis, s -> Set(GreensDClasses(s), x -> Length(Idempotents(x))));
[ [ 01 ], [ 14 ], [ 12 ], [ 15730 ], [ 14 ],
  [ 01611167168 ], [ 01 ], [ 2642169197 ],
  [ 0251858 ], [ 01 ], [ 015846159 ], [ 01519 ],
  [ 02411 ], [ 012414 ], [ 01312 ], [ 0123 ],
  [ 251739 ], [ 01624137 ], [ 1 ], [ 01310 ],
  [ 01467221 ], [ 0123 ], [ 141224 ], [ 01734 ],
  [ 01 ], [ 013 ], [ 01 ], [ 05936 ], [ 0151750 ],
  [ 01763 ], [ 0148 ], [ 01271369 ], [ 0124 ],
  [ 417 ], [ 01262093 ], [ 141024 ], [ 017105199 ],
  [ 01 ], [ 01 ], [ 0151348 ], [ 152051 ], [ 0123 ],
  [ 013 ], [ 0123 ], [ 272782 ], [ 14924 ],
  [ 013538 ], [ 4624 ], [ 01 ], [ 1647121 ],
  [ 0145 ], [ 0151442 ], [ 0138 ], [ 01680 ],
  [ 136 ], [ 01411 ], [ 01462065 ], [ 01410 ],
  [ 012 ], [ 2410 ], [ 0153462 ], [ 012 ], [ 1 ], [ 1 ],
  [ 034 ], [ 01626 ], [ 02647121 ], [ 2310 ],
  [ 1411 ], [ 3415 ], [ 01 ], [ 1 ], [ 0137122248 ],
  [ 0712111 ], [ 0179258430889 ], [ 01420 ],
  [ 01612231324 ], [ 0136143163 ], [ 13424 ],
  [ 0157140277 ], [ 0523 ], [ 014 ], [ 1 ], [ 01552 ],
  [ 1 ], [ 012 ], [ 01711177 ], [ 012738390434 ],
  [ 05940114 ], [ 01263265 ], [ 01 ], [ 061674 ],
  [ 01 ], [ 01 ], [ 14665114 ], [ 01740200 ],
  [ 05844 ], [ 01310 ], [ 01673 ], [ 01433 ] ]
gap> List(semis, x -> [Length(GreensDClasses(x))]);
[ [ 3 ], [ 2 ], [ 2 ], [ 4 ], [ 3 ], [ 9 ], [ 2 ], [ 5 ], [ 6 ], [ 2 ],
  [ 75 ], [ 10 ], [ 4 ], [ 8 ], [ 12 ], [ 5 ], [ 4 ], [ 16 ], [ 1 ], [ 10 ],
  [ 101 ], [ 5 ], [ 4 ], [ 8 ], [ 2 ], [ 3 ], [ 2 ], [ 6 ], [ 7 ], [ 6 ],
  [ 4 ], [ 19 ], [ 8 ], [ 3 ], [ 13 ], [ 4 ], [ 36 ], [ 2 ], [ 2 ], [ 14 ],
  [ 4 ], [ 7 ], [ 4 ], [ 11 ], [ 4 ], [ 4 ], [ 7 ], [ 3 ], [ 2 ], [ 4 ],
  [ 4 ], [ 7 ], [ 6 ], [ 16 ], [ 4 ], [ 7 ], [ 8 ], [ 4 ], [ 13 ], [ 3 ],
  [ 7 ], [ 7 ], [ 1 ], [ 2 ], [ 4 ], [ 9 ], [ 10 ], [ 3 ], [ 3 ], [ 3 ],
  [ 2 ], [ 1 ], [ 54 ], [ 10 ], [ 32 ], [ 4 ], [ 7 ], [ 15 ], [ 5 ], [ 22 ],
  [ 7 ], [ 5 ], [ 1 ], [ 17 ], [ 1 ], [ 14 ], [ 62 ], [ 11 ], [ 26 ], [ 15 ],
  [ 2 ], [ 8 ], [ 3 ], [ 3 ], [ 6 ], [ 19 ], [ 4 ], [ 5 ], [ 6 ], [ 13 ] ]
gap> List(semis, s -> Length(Idempotents(s)));
153439354141683122025172116663168115,
  240841431415074791392725122393141167,
  77677118384734117510621393111697154,
  1610241273417615162211381130159525574,
  316334302891631519787217310619611191,
  24857148638 ]
gap> a := Transformation([214563]);;
gap> b := Transformation([231541]);;
gap> M := Semigroup(a, b);;
gap> GreensLClassOfElement(M, a);
<Green's L-class: Transformation( [ 214563 ] )>
gap> Transformation([214563]) in last;
true
gap> f := FreeSemigroup(3);;
gap> a := f.1;; b := f.2;; c := f.3;;
gap> s := f / [[a ^ 2, a], [b ^ 2, b], [c ^ 2, c], [a * b, a],
> [b * a, b], [a * c, a], [c * a, c], [b * c, b], [c * b, c]];
<fp semigroup with 3 generators and 9 relations of length 30>
gap> Size(s);
3
gap> GreensLClassOfElement(s, s.1);
<Green's L-class: s1>
gap> gens := [Transformation([22523]),
> Transformation([25353])];;
gap> S := Semigroup(gens);;
gap> f := Transformation([55353]);;
gap> GreensHClassOfElement(S, f);;
gap> Representative(last);
Transformation( [ 55353 ] )
gap> IsTrivial(SchutzenbergerGroup(last2));
true
gap> gens := [Transformation([41453]),
> Transformation([53543])];;
gap> S := Semigroup(gens);;
gap> C := GreensLClassOfElement(S, gens[1] * gens[2] * gens[1]);
<Green's L-class: Transformation( [ 53543 ] )>
gap> Transformation([53543]) in last;
true
gap> gens := [Transformation([51151]),
> Transformation([52432])];;
gap> S := Semigroup(gens);;
gap> gens := [Transformation([12121]),
> Transformation([34214])];;
gap> S := Semigroup(gens);;
gap> RClassReps(S);
[ Transformation( [ 12121 ] ), Transformation( [ 34214 ] ),
  Transformation( [ 12212 ] ), Transformation( [ 21211 ] ) ]
gap> a := Transformation([214563]);;
gap> b := Transformation([231541]);;
gap> M := Semigroup(a, b);;
gap> rc := GreensRClassOfElement(M, a * b * a);
<Green's R-class: Transformation( [ 416522 ] )>
gap> Transformation([521433]) in last;
true
gap> gens := [Transformation([35251]),
> Transformation([43215])];;
gap> S := Semigroup(gens);;
gap> f := Transformation([24253]);;
gap> r := RClass(S, f);
<Green's R-class: Transformation( [ 24253 ] )>
gap> Transformation([31352]) in last;
true
gap> LambdaOrb(r);
<closed orbit, 25 points with Schreier tree with log>
gap> AsList(last);
[ [ 0 ], [ 1235 ], [ 12345 ], [ 2345 ], [ 125 ],
  [ 135 ], [ 345 ], [ 123 ], [ 245 ], [ 235 ],
  [ 234 ], [ 15 ], [ 25 ], [ 13 ], [ 45 ], [ 35 ], [ 23 ],
  [ 24 ], [ 12 ], [ 5 ], [ 34 ], [ 1 ], [ 3 ], [ 4 ], [ 2 ] ]
gap> LambdaOrbMults(LambdaOrb(r), LambdaOrbSCCIndex(r))[LambdaOrbSCCIndex(r)];
[ IdentityTransformation, IdentityTransformation ]
gap> SchutzenbergerGroup(r);
Group([ (1,3,2,5) ])
gap> gens := [Transformation([41524]),
> Transformation([44153])];;
gap> gens := [Transformation([44353]),
> Transformation([51141]),
> Transformation([55445])];;
gap> S := Semigroup(gens);;
gap> f := Transformation([45555]);;
gap> SchutzenbergerGroup(GreensDClassOfElement(S, f));
Group([ (4,5) ])
gap> SchutzenbergerGroup(GreensRClassOfElement(S, f));
Group([ (4,5) ])
gap> SchutzenbergerGroup(GreensLClassOfElement(S, f));
Group([ (4,5) ])
gap> SchutzenbergerGroup(GreensHClassOfElement(S, f));
Group([ (4,5) ])
gap>  S := Semigroup([Transformation([644461]),
> Transformation([651622])]);;
gap> AsSet(Enumerate(LambdaOrb(S)));
[ [ 0 ], [ 1 ], [ 1256 ], [ 14 ], [ 146 ], [ 2 ], [ 25 ],
  [ 256 ], [ 26 ], [ 4 ], [ 46 ], [ 5 ], [ 6 ] ]
gap> S := Semigroup([Transformation([2341]),
> Transformation([3311])]);;
gap> Idempotents(S, 1);
[  ]
gap> Idempotents(S, 2);
[ Transformation( [ 1133 ] ), Transformation( [ 1331 ] ),
  Transformation( [ 2244 ] ), Transformation( [ 4224 ] ) ]
gap> Idempotents(S, 3);
[  ]
gap> Idempotents(S, 4);
[ IdentityTransformation ]
gap> Idempotents(S);
[ IdentityTransformation, Transformation( [ 1133 ] ),
  Transformation( [ 1331 ] ), Transformation( [ 2244 ] ),
  Transformation( [ 4224 ] ) ]
gap> S := Semigroup([Transformation([2412]),
> Transformation([3341])]);;
gap> AsSet(Enumerate(RhoOrb(S)));
[ [ 0 ], [ 1111 ], [ 1112 ], [ 1121 ], [ 1122 ],
  [ 1123 ], [ 1211 ], [ 1221 ], [ 1231 ] ]

# MonoidPkgTest7: from install_no_grape.tst
gap> gens := [Transformation([4336723]),
>   Transformation([6644214])];;
gap> s := Semigroup(gens);;
gap> Length(GreensRClasses(s));
17
gap> s := Semigroup(gens);;
gap> NrRClasses(s);
17
gap> f := Transformation([3333323]);;
gap> r := RClass(s, f);
<Green's R-class: Transformation( [ 3333323 ] )>
gap> Transformation([3333323]) in last;
true
gap> LambdaOrb(r);
<closed orbit, 19 points with Schreier tree with log>
gap> AsSet(LambdaOrb(r));
[ [ 0 ], [ 1 ], [ 1246 ], [ 14 ], [ 146 ], [ 16 ], [ 2 ],
  [ 23 ], [ 2346 ], [ 23467 ], [ 236 ], [ 24 ],
  [ 246 ], [ 26 ], [ 3 ], [ 36 ], [ 4 ], [ 46 ], [ 6 ] ]
gap> SchutzenbergerGroup(r);
Group([ (2,3) ])
gap> Number(GreensDClasses(s), IsRegularDClass);
3
gap> s := Semigroup(gens);
<transformation semigroup of degree 7 with 2 generators>
gap> NrRegularDClasses(s);
3

# MonoidPkgTest8
gap> g1 := Transformation([224456]);;
gap> g2 := Transformation([534466]);;
gap> m1 := Monoid(g1, g2);;
gap> g1 := Transformation([54421]);;
gap> g2 := Transformation([25541]);;
gap> m2 := Monoid(g1, g2);;
gap> g1 := Transformation([12133]);;
gap> g2 := Transformation([22355]);;
gap> m3 := Monoid(g1, g2);;
gap> g1 := Transformation([87531388]);;
gap> g2 := Transformation([51414478]);;
gap> m4 := Monoid(g1, g2);;
gap> g1 := Transformation([31232323]);;
gap> g2 := Transformation([25852578]);;
gap> m5 := Monoid(g1, g2);;
gap> g1 := Transformation([33262446]);;
gap> g2 := Transformation([51787581]);;
gap> m6 := Semigroup(g1, g2);;
gap> g1 := Transformation([33262446346]);;
gap> g2 := Transformation([44613333111111]);;
gap> m7 := Monoid(g1, g2);;  # (this is a good example!)
gap> g1 := Transformation([33262446346]);;
gap> g2 := Transformation([44613333111111]);;
gap> g3 := Transformation([223446666611]);;
gap> m8 := Monoid(g1, g2, g3);;
gap> g1 := Transformation([33262446346]);;
gap> g2 := Transformation([44613333111111]);;
gap> g3 := Transformation([223446666611]);;
gap> g4 := Transformation([2234466661111]);;
gap> m9 := Monoid(g1, g2, g3, g4);;
gap> g1 := Transformation([123646119667612]);;
gap> g2 := Transformation([107211731243875]);;
gap> m11 := Monoid(g1, g2);;
gap> g1 := Transformation([3212279421121112]);;
gap> g2 := Transformation([36127223617111]);;
gap> m14 := Monoid(g1, g2);;
gap> g1 := Transformation([223456]);;
gap> g2 := Transformation([234561]);;
gap> m15 := Monoid(g1, g2);;
gap> g1 := Transformation([214567321]);;
gap> g2 := Transformation([214214214]);;
gap> m18 := Monoid(g1, g2);;
gap> g1 := Transformation([525581085210]);;
gap> g2 := Transformation([2255588888]);;
gap> m22 := Monoid(g1, g2);;
gap> g1 := Transformation([46385610437]);;
gap> g2 := Transformation([5663863784]);;
gap> g3 := Transformation([86328109262]);;
gap> m23 := Monoid(g1, g2, g3);;

# MonoidPkgTest9
gap> SmallMonoids := [m1, m2, m3, m4, m5, m6, m7, m8, m9, m11, m14, m15, m18,
> m22, m23];;
gap> List(SmallMonoids, IsCompletelyRegularSemigroup);
[ false, true, false, false, true, true, true, true, true, false, false,
  false, false, true, false ]
gap> List(SmallMonoids, IsRegularSemigroup);
[ false, true, false, false, true, true, true, true, true, false, false,
  true, true, true, false ]
gap> List(SmallMonoids, IsSimpleSemigroup);
[ false, false, false, false, false, true, false, false, false, false, false,
  false, false, false, false ]
gap> List(SmallMonoids, IsCompletelySimpleSemigroup);
[ false, false, false, false, false, true, false, false, false, false, false,
  false, false, false, false ]
gap> List(SmallMonoids, IsInverseSemigroup);
[ false, true, false, false, false, false, false, false, false, false, false,
  false, false, false, false ]
gap> List(SmallMonoids, IsCliffordSemigroup);
[ false, true, false, false, false, false, false, false, false, false, false,
  false, false, false, false ]
gap> List(SmallMonoids, IsGroupAsSemigroup);
[ false, false, false, false, false, false, false, false, false, false,
  false, false, false, false, false ]
gap> List(SmallMonoids, IsZeroSemigroup);
[ false, false, false, false, false, false, false, false, false, false,
  false, false, false, false, false ]
gap> List(SmallMonoids, IsLeftZeroSemigroup);
[ false, false, false, false, false, false, false, false, false, false,
  false, false, false, false, false ]
gap> List(SmallMonoids, IsRightZeroSemigroup);
[ false, false, false, false, false, false, false, false, false, false,
  false, false, false, false, false ]
gap> List(SmallMonoids, IsCommutativeSemigroup);
[ false, false, false, false, false, false, false, false, false, false,
  false, false, false, false, false ]
gap> List(SmallMonoids, IsZeroGroup);
[ false, false, false, false, false, false, false, false, false, false,
  false, false, false, false, false ]

# MonoidPkgTest10
gap> gens := [Transformation([2415447381]),
>   Transformation([3288448657]),
>   Transformation([410661241097]),
>   Transformation([62249951018]),
>   Transformation([6416689622]),
>   Transformation([68110649194]),
>   Transformation([8623348629]),
>   Transformation([9128159995]),
>   Transformation([931510346102]),
>   Transformation([107371988410])];;
gap> s := Semigroup(gens);;
gap> o := Orb(s, [1234], OnSets);
<open orbit, 1 points>
gap> Enumerate(o);
<closed orbit, 351 points>
gap> List(OrbSCC(o), x -> o{x});
[ [ [ 1234 ], [ 1245 ], [ 2348 ], [ 1289 ],
      [ 2356 ], [ 1468 ], [ 14610 ], [ 4689 ],
      [ 3458 ], [ 1345 ], [ 2469 ], [ 2468 ],
      [ 1589 ], [ 2368 ], [ 1259 ], [ 1269 ],
      [ 2345 ], [ 16810 ], [ 3467 ], [ 3789 ],
      [ 46910 ], [ 4578 ], [ 16910 ], [ 1689 ],
      [ 36910 ], [ 2679 ], [ 2458 ], [ 35610 ],
      [ 12310 ], [ 46710 ], [ 2467 ], [ 48910 ],
      [ 2369 ], [ 1248 ], [ 24610 ], [ 2478 ],
      [ 18910 ], [ 1469 ], [ 35910 ], [ 13410 ],
      [ 2589 ], [ 2456 ], [ 12610 ], [ 24710 ],
      [ 1457 ], [ 2457 ], [ 68910 ], [ 1348 ],
      [ 1569 ], [ 1249 ], [ 1246 ], [ 3468 ],
      [ 1356 ], [ 13910 ], [ 3578 ], [ 1347 ],
      [ 37810 ], [ 2689 ], [ 4789 ], [ 45610 ],
      [ 1267 ], [ 78910 ], [ 1378 ], [ 25610 ],
      [ 3469 ], [ 14910 ], [ 2389 ], [ 3478 ],
      [ 1357 ], [ 2569 ], [ 2346 ], [ 14810 ],
      [ 3689 ], [ 3489 ], [ 15610 ], [ 23910 ],
      [ 1489 ], [ 47810 ], [ 45810 ], [ 17810 ],
      [ 3678 ], [ 25910 ], [ 14710 ], [ 2459 ],
      [ 4568 ], [ 1789 ], [ 3568 ], [ 13610 ],
      [ 1268 ], [ 26910 ], [ 27910 ], [ 47910 ],
      [ 24510 ], [ 23510 ], [ 13710 ], [ 2568 ],
      [ 16710 ], [ 2349 ], [ 13510 ], [ 12910 ],
      [ 2357 ], [ 1467 ], [ 4569 ], [ 1479 ],
      [ 1456 ], [ 17910 ], [ 24910 ], [ 67910 ],
      [ 1478 ], [ 23410 ], [ 1258 ], [ 1235 ],
      [ 2489 ], [ 12410 ], [ 2359 ], [ 46810 ],
      [ 26710 ], [ 4678 ], [ 3456 ], [ 1379 ],
      [ 1278 ], [ 2347 ], [ 1256 ], [ 34810 ],
      [ 24810 ], [ 2678 ], [ 3457 ], [ 14510 ],
      [ 45910 ], [ 1679 ], [ 34910 ], [ 12510 ],
      [ 34710 ], [ 1458 ], [ 56910 ], [ 1279 ],
      [ 2358 ], [ 2378 ], [ 1346 ], [ 1359 ],
      [ 37910 ], [ 4679 ], [ 34510 ], [ 1459 ],
      [ 2479 ], [ 2578 ], [ 34610 ], [ 1568 ],
      [ 3459 ], [ 1247 ], [ 5689 ], [ 1578 ],
      [ 1239 ], [ 1389 ], [ 1238 ], [ 1369 ],
      [ 1257 ], [ 1237 ], [ 1349 ], [ 15910 ],
      [ 56810 ], [ 23610 ], [ 12710 ], [ 1358 ],
      [ 13810 ], [ 26810 ], [ 28910 ], [ 2567 ],
      [ 12810 ], [ 2367 ], [ 3479 ], [ 5678 ],
      [ 15810 ], [ 25810 ], [ 4567 ], [ 3567 ],
      [ 3569 ], [ 4589 ] ],
  [ [ 245 ], [ 6810 ], [ 134 ], [ 238 ], [ 146 ],
      [ 4610 ], [ 268 ], [ 246 ], [ 248 ], [ 189 ],
      [ 4810 ], [ 589 ], [ 348 ], [ 378 ], [ 169 ],
      [ 249 ], [ 8910 ], [ 7910 ], [ 158 ], [ 368 ],
      [ 136 ], [ 259 ], [ 129 ], [ 235 ], [ 1610 ],
      [ 489 ], [ 478 ], [ 1910 ], [ 469 ], [ 4910 ],
      [ 148 ], [ 7810 ], [ 149 ], [ 258 ], [ 2910 ],
      [ 269 ], [ 479 ], [ 145 ], [ 1710 ], [ 127 ],
      [ 349 ], [ 126 ], [ 468 ], [ 2610 ], [ 289 ],
      [ 1210 ], [ 124 ], [ 359 ], [ 458 ], [ 5610 ],
      [ 2310 ], [ 3710 ], [ 467 ], [ 789 ], [ 568 ],
      [ 346 ], [ 168 ], [ 2410 ], [ 6710 ], [ 247 ],
      [ 345 ], [ 137 ], [ 3810 ], [ 678 ], [ 689 ],
      [ 456 ], [ 3510 ], [ 239 ], [ 6910 ], [ 457 ],
      [ 4510 ], [ 2510 ], [ 369 ], [ 1310 ], [ 128 ],
      [ 236 ], [ 125 ], [ 3910 ], [ 578 ], [ 5910 ],
      [ 159 ], [ 1410 ], [ 389 ], [ 138 ], [ 123 ],
      [ 139 ], [ 358 ], [ 3410 ], [ 179 ], [ 156 ],
      [ 278 ], [ 347 ], [ 157 ], [ 1810 ], [ 4710 ],
      [ 367 ], [ 147 ], [ 257 ], [ 178 ], [ 237 ],
      [ 459 ], [ 569 ], [ 234 ], [ 135 ], [ 679 ],
      [ 379 ], [ 167 ], [ 279 ], [ 3610 ], [ 267 ],
      [ 2810 ], [ 256 ], [ 1510 ], [ 2710 ], [ 356 ],
      [ 5810 ], [ 357 ], [ 567 ] ],
  [ [ 46 ], [ 26 ], [ 210 ], [ 48 ], [ 610 ], [ 49 ], [ 58 ],
      [ 18 ], [ 410 ], [ 78 ], [ 68 ], [ 59 ], [ 45 ], [ 17 ],
      [ 810 ], [ 14 ], [ 89 ], [ 19 ], [ 35 ], [ 16 ], [ 34 ],
      [ 28 ], [ 36 ], [ 24 ], [ 29 ], [ 47 ], [ 38 ], [ 13 ],
      [ 12 ], [ 23 ], [ 37 ], [ 25 ], [ 110 ], [ 310 ], [ 67 ],
      [ 710 ], [ 39 ], [ 69 ], [ 910 ], [ 79 ], [ 15 ], [ 57 ],
      [ 56 ], [ 27 ], [ 510 ] ],
  [ [ 9 ], [ 4 ], [ 5 ], [ 6 ], [ 3 ], [ 8 ], [ 10 ], [ 1 ], [ 2 ], [ 7 ] ] ]
gap> g1 := Transformation([14111172625510]);;
gap> g2 := Transformation([244210511111167]);;
gap> m10 := Monoid(g1, g2);;
gap> g1 := Transformation([1087414101072]);;
gap> g2 := Transformation([525591083810]);;
gap> m12 := Monoid(g1, g2);;
gap> g1 := Transformation([21453789106]);;
gap> g2 := Transformation([12435678910]);;
gap> g3 := Transformation([12345610987]);;
gap> g4 := Transformation([9143693439]);;
gap> m13 := Monoid(g1, g2, g3, g4);;
gap> g1 := Transformation([13109515131382726]);;
gap> g2 := Transformation([6111210410135851169]);;
gap> m16 := Semigroup(g1, g2);;
gap> g1 := Transformation([1210851512128262]);;
gap> g2 := Transformation([561011104101257410]);;
gap> g3 := Transformation([6812548107411011]);;
gap> m17 := Monoid(g1, g2, g3);;
gap> g1 := Transformation([2345187627]);;
gap> g2 := Transformation([5412376541]);;
gap> g3 := Transformation([2143214433]);;
gap> m19 := Monoid(g1, g2, g3);;
gap> g1 := Transformation([2345187627]);;
gap> g2 := Transformation([2345687122]);;
gap> m20 := Monoid(g1, g2);;
gap> g1 := Transformation([2345187627]);;
gap> g2 := Transformation([3874143372]);;
gap> m21 := Monoid(g1, g2);;
gap> BigMonoids := [m10, m12, m13, m16, m17, m19, m20, m21];;
gap> g1 := Transformation([224456]);;
gap> g2 := Transformation([534466]);;
gap> m1 := Monoid(g1, g2);;
gap> g1 := Transformation([54421]);;
gap> g2 := Transformation([25541]);;
gap> m2 := Monoid(g1, g2);;
gap> g1 := Transformation([12133]);;
gap> g2 := Transformation([22355]);;
gap> m3 := Monoid(g1, g2);;
gap> g1 := Transformation([87531388]);;
gap> g2 := Transformation([51414478]);;
gap> m4 := Monoid(g1, g2);;
gap> g1 := Transformation([31232323]);;
gap> g2 := Transformation([25852578]);;
gap> m5 := Monoid(g1, g2);;
gap> g1 := Transformation([33262446]);;
gap> g2 := Transformation([51787581]);;
gap> m6 := Semigroup(g1, g2);;
gap> g1 := Transformation([33262446346]);;
gap> g2 := Transformation([44613333111111]);;
gap> m7 := Monoid(g1, g2);;  # (this is a good example!)
gap> g1 := Transformation([33262446346]);;
gap> g2 := Transformation([44613333111111]);;
gap> g3 := Transformation([223446666611]);;
gap> m8 := Monoid(g1, g2, g3);;
gap> g1 := Transformation([33262446346]);;
gap> g2 := Transformation([44613333111111]);;
gap> g3 := Transformation([223446666611]);;
gap> g4 := Transformation([2234466661111]);;
gap> m9 := Monoid(g1, g2, g3, g4);;
gap> g1 := Transformation([123646119667612]);;
gap> g2 := Transformation([107211731243875]);;
gap> m11 := Monoid(g1, g2);;
gap> g1 := Transformation([3212279421121112]);;
gap> g2 := Transformation([36127223617111]);;
gap> m14 := Monoid(g1, g2);;
gap> g1 := Transformation([223456]);;
gap> g2 := Transformation([234561]);;
gap> m15 := Monoid(g1, g2);;
gap> g1 := Transformation([214567321]);;
gap> g2 := Transformation([214214214]);;
gap> m18 := Monoid(g1, g2);;
gap> g1 := Transformation([525581085210]);;
gap> g2 := Transformation([2255588888]);;
gap> m22 := Monoid(g1, g2);;
gap> g1 := Transformation([46385610437]);;
gap> g2 := Transformation([5663863784]);;
gap> g3 := Transformation([86328109262]);;
gap> m23 := Monoid(g1, g2, g3);;
gap> SmallMonoids :=
> [m1, m2, m3, m4, m5, m6, m7, m8, m9, m11, m14, m15, m18, m22, m23];;
gap> List(SmallMonoids, IsCompletelyRegularSemigroup);
[ false, true, false, false, true, true, true, true, true, false, false,
  false, false, true, false ]
gap> List(BigMonoids, IsCompletelyRegularSemigroup);
[ true, false, false, false, false, false, true, false ]
gap> g1 := Transformation([33262446]);;
gap> g2 := Transformation([51787581]);;
gap> cs1 := Semigroup(g1, g2);;
gap> IsCompletelySimpleSemigroup(cs1);
true
gap> g1 := Transformation([2345187627]);;
gap> g2 := Transformation([2345687122]);;
gap> cs2 := Semigroup(g1, g2);;
gap> IsCompletelySimpleSemigroup(cs2);
true
gap> g1 := Transformation([21121]);;
gap> g2 := Transformation([34344]);;
gap> g3 := Transformation([34343]);;
gap> g4 := Transformation([43344]);;
gap> cs3 := Semigroup(g1, g2, g3, g4);;
gap> IsCompletelySimpleSemigroup(cs3);
true
gap> g1 := Transformation([44411678910111]);;
gap> g2 := Transformation([66677148910117]);;
gap> g3 := Transformation([88899101114679]);;
gap> g4 := Transformation([22244678910114]);;
gap> g5 := Transformation([11155678910115]);;
gap> g6 := Transformation([11444678910111]);;
gap> g7 := Transformation([11744678910116]);;
gap> cs4 := Semigroup(g1, g2, g3, g4, g5, g6, g7);;
gap> IsCompletelySimpleSemigroup(cs4);
true
gap> g1 := Transformation([12212]);;
gap> g2 := Transformation([34344]);;
gap> g3 := Transformation([34343]);;
gap> g4 := Transformation([43344]);;
gap> cs5 := Semigroup(g1, g2, g3, g4);;
gap> IsCompletelySimpleSemigroup(cs5);
true
gap> dc := GreensDClassOfElement(m14, Transformation(
> [122136612233113]));;
gap> dc = MinimalIdeal(m14);
false
gap> dc := GreensDClassOfElement(m9, Transformation(
> [33262446346]));;
gap> d := GreensDClassOfElement(m14, Transformation(
> [122136612233113]));;
gap> g := GroupHClassOfGreensDClass(d);;
gap> s := Semigroup(AsList(g));;
gap> IsGroupAsSemigroup(s);
true
gap> IsGroupAsSemigroup(Range(IsomorphismTransformationSemigroup(
>  Group([(24)(35), (12354)]))));
true
gap> IsGroupAsSemigroup(m14);
false
gap> List(SmallMonoids, IsCliffordSemigroup);
[ false, true, false, false, false, false, false, false, false, false, false,
  false, false, false, false ]
gap> List(BigMonoids, IsCliffordSemigroup);
[ false, false, false, false, false, false, false, false ]
gap> ForAll(GreensDClasses(m2), x -> Length(GreensHClasses(x)) = 1 and
> IsRegularDClass(x));
true
gap> IsCliffordSemigroup(m2);
true
gap> ForAll(GreensDClasses(m2), x -> Length(GreensHClasses(x)) = 1 and
> IsRegularDClass(x));
true
gap> g1 := Transformation([12344444444444444,
4444]);;
gap> g2 := Transformation([12345674444444444,
4444]);;
gap> g3 := Transformation([123456789101144444,
44444]);;
gap> g4 := Transformation([1234444444412131415,
1644444]);;
gap> g5 := Transformation([1 .. 21]);;
gap> c3 := Semigroup(g1, g2, g3, g4, g5);;
gap> IsCliffordSemigroup(c3);
true
gap> Size(c3);
5
gap> ForAll(GreensDClasses(c3), x -> Length(GreensHClasses(x)) = 1 and
> IsRegularDClass(x));
true
gap> g1 := g1 * (12);;
gap> g2 := Transformation([12344444444444444,
4444]) * (1234);;
gap> g3 := Transformation([12345674444444444,
4444]) * (56);;
gap> g4 := Transformation([12345674444444444,
4444]) * (567);;
gap> g5 := Transformation([123456789101144444,
44444]) * (89);;
gap> g6 := Transformation([123456789101144444,
44444]) * (1011);;
gap> g7 := Transformation([1234444444412131415,
161718192021]) * (1213);;
gap> g8 := Transformation(
> [1234444444412131415161718192021]) *
> (1213141516);;
gap> g9 := Transformation([1 .. 21]) * (1718192021);;
gap> c4 := Semigroup(g1, g2, g3, g4, g5, g6, g7, g8, g9);;
gap> IsCliffordSemigroup(c4);
true
gap> ForAll(GreensDClasses(c3), x -> Length(GreensHClasses(x)) = 1 and
> IsRegularDClass(x));
true
gap> ForAll(GreensDClasses(c4), x -> Length(GreensHClasses(x)) = 1 and
> IsRegularDClass(x));
true
gap> List(SmallMonoids, IsRegularSemigroup);
[ false, true, false, false, true, true, true, true, true, false, false,
  true, true, true, false ]
gap> List(BigMonoids, IsRegularSemigroup);
[ true, false, false, false, false, true, true, false ]
gap> List([c3, c4], IsInverseSemigroup);
[ true, true ]
gap> IsBand(c3);
true
gap> IsBand(c4);
false
gap> List(SmallMonoids, IsBand);
[ false, false, false, false, false, false, false, false, false, false,
  false, false, false, false, false ]
gap> List(BigMonoids, IsBand);
[ false, false, false, false, false, false, false, false ]
gap> g := Group(());;
gap> mat := [[(), (), ()], [(), (), ()], [(), (), ()], [(), (), ()]];;
gap> rms := ReesMatrixSemigroup(g, mat);;
gap> s := Range(IsomorphismTransformationSemigroup(rms));;
gap> IsRectangularBand(s);
true
gap> IsBand(s);
true
gap> IsSemiband(FullTransformationSemigroup(4));
false
gap> Size(Semigroup(Idempotents(FullTransformationSemigroup(4))));
233
gap> 4 ^ 4 - Factorial(4) + 1;
233
gap> ForAll(SmallMonoids, x -> not IsSemiband(x));
true
gap> List(SmallMonoids, IsOrthodoxSemigroup);
[ false, true, false, false, false, false, true, true, true, false, false,
  false, false, true, false ]
gap> s := SmallMonoids[1];
<non-regular transformation monoid of degree 6 with 2 generators>
gap> IsRegularSemigroup(s);
false
gap> IsOrthodoxSemigroup(s);
false
gap> t := Semigroup(Idempotents(s));
<transformation monoid of degree 6 with 3 generators>
gap> Size(t);
4
gap> s := SmallMonoids[7];;
gap> Size(s);;
gap> t := Semigroup(Idempotents(s));;
gap> IsBand(t);
true
gap> IsRectangularBand(t);
false
gap> g := Group(());;
gap> mat := [[(), (), (), (), (), ()]];;
gap> rms := ReesMatrixSemigroup(g, mat);;
gap> s := Range(IsomorphismTransformationSemigroup(rms));;
gap> IsLeftZeroSemigroup(s);
true
gap> IsRightZeroSemigroup(s);
false
gap> mat := TransposedMat(mat);;
gap> rms := ReesMatrixSemigroup(g, mat);;
gap> s := Range(IsomorphismTransformationSemigroup(rms));;
gap> IsRightZeroSemigroup(s);
true
gap> IsLeftZeroSemigroup(s);
false
gap> List(BigMonoids, IsLeftZeroSemigroup);
[ false, false, false, false, false, false, false, false ]
gap> List(BigMonoids, IsRightZeroSemigroup);
[ false, false, false, false, false, false, false, false ]
gap> gens := [Transformation([22446688101012122]),
> Transformation([113355779911113]),
> Transformation([173951171931155]),
> Transformation([779911111133557])];;
gap> S := Semigroup(gens);;
gap> IsSimpleSemigroup(S);
true
gap> IsCompletelySimpleSemigroup(S);
true
gap> gens := [Transformation([1243654]),
> Transformation([1256345]),
> Transformation([2122222])];;
gap> S := Semigroup(gens);;
gap> IsCompletelyRegularSemigroup(S);
true
gap> gens := [Transformation([245378691]),
> Transformation([356781924])];;
gap> S := Semigroup(gens);;
gap> IsGroupAsSemigroup(S);
true
gap> IsCommutativeSemigroup(S);
true
gap> gens := [Transformation([12456378]),
> Transformation([33456278]),
> Transformation([12536844])];;
gap> S := Semigroup(gens);;
gap> IsCliffordSemigroup(S);
true
gap> gens := [Transformation([1114447771]),
> Transformation([2225558882]),
> Transformation([3336669993]),
> Transformation([1114447774]),
> Transformation([1114447777])];;
gap> S := Semigroup(gens);;
gap> IsBand(S);
true
gap> IsRectangularBand(S);
true
gap> S := FullTransformationSemigroup(4);;
gap> x := Transformation([1231]);;
gap> D := GreensDClassOfElement(S, x);;
gap> T := Semigroup(Elements(D));;
gap> IsSemiband(T);
true
gap> gens := [Transformation([111454]),
>  Transformation([123112]),
>  Transformation([123113]),
>  Transformation([555555])];;
gap> S := Semigroup(gens);;
gap> IsOrthodoxSemigroup(S);
true
gap> gens := [Transformation([21435]),
>  Transformation([32311])];;
gap> S := Semigroup(gens);;
gap> IsRightZeroSemigroup(S);
false
gap> gens := [Transformation([12331]),
>  Transformation([12441])];;
gap> S := Semigroup(gens);;
gap> IsRightZeroSemigroup(S);
true
gap> gens := [Transformation([21435]),
>  Transformation([32311])];;
gap> S := Semigroup(gens);;
gap> IsRightZeroSemigroup(S);
false
gap> gens := [Transformation([12331]),
>  Transformation([12333])];;
gap> S := Semigroup(gens);;
gap> IsLeftZeroSemigroup(S);
true
gap> gens := [Transformation([4763153659]),
>  Transformation([5351938743]),
>  Transformation([510101766877]),
>  Transformation([7433223293]),
>  Transformation([8134963716])];;
gap> S := Semigroup(gens);;
gap> IsZeroSemigroup(S);
false
gap> gens := [Transformation([1426652]),
> Transformation([1636216])];;
gap> S := Semigroup(gens);;
gap> MultiplicativeZero(S);
Transformation( [ 1111111 ] )

#
gap> SEMIGROUPS.StopTest();
gap> STOP_TEST("Semigroups package: extreme/monoid_pkg.tst");

[Dauer der Verarbeitung: 0.88 Sekunden, vorverarbeitet 2026-06-17]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik