-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsemigroup-tests2.g
50 lines (41 loc) · 1.23 KB
/
semigroup-tests2.g
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
############
#
# Load tools
#
############
LoadPackage( "semigroupviz" );
############
#
# Create example semigroups to visualize
#
############
MD := Monoid( [ Transformation( [ 2, 4, 3, 4 ] ),
Transformation( [ 3, 3, 2, 3, 3 ] ) ] ); # size 7
Z3 := Semigroup( [ Transformation( [ 2, 3, 1 ] ) ] ); # size 3
Z5 := Semigroup( [ Transformation( [ 3, 5, 4, 2, 6, 3 ] ) ] ); # size 5
P1 := DirectProduct( MD, Z3 ); # size 35
P2 := DirectProduct( MD, Z5 ); # size 21
P3 := DirectProduct( Z3, Z5 ); # size 15
S2 := SingularTransformationSemigroup( 2 ); # size 2
S3 := SingularTransformationSemigroup( 3 ); # size 21
S4 := SingularTransformationSemigroup( 4 ); # size 232
S5 := SingularTransformationSemigroup( 5 ); # size 3005
F2 := FullTransformationSemigroup( 2 ); # size 4
F3 := FullTransformationSemigroup( 3 ); # size 27
F4 := FullTransformationSemigroup( 4 ); # size 256
F5 := FullTransformationSemigroup( 5 ); # size 3125
############
#
# Make a picture
#
############
Pr := x -> ReplacedString( String( ListTransformation( x ) ), " ", "" );
ShowCayleyGraph(
Group( [ (1,2), (1,2,3) ] ),
rec(
# ToString := Pr,
ShowActionNames := true#,
#Multiplication := "left",
#ReturnJSON := true
)
);