Use the cartesian_product
and multiplication_table
methods.
Is this what you are looking for?
sage: version()
'SageMath version 7.4, Release Date: 2016-10-18'
sage: G = SymmetricGroup(3).cartesian_product(CyclicPermutationGroup(3))
sage: G in Groups()
True
sage: G.multiplication_table()
* a b c d e f g h i j k l m n o p q r
+------------------------------------
a| a b c d e f g h i j k l m n o p q r
b| b c a e f d h i g k l j n o m q r p
c| c a b f d e i g h l j k o m n r p q
d| d e f a b c p q r m n o j k l g h i
e| e f d b c a q r p n o m k l j h i g
f| f d e c a b r p q o m n l j k i g h
g| g h i m n o j k l a b c p q r d e f
h| h i g n o m k l j b c a q r p e f d
i| i g h o m n l j k c a b r p q f d e
j| j k l p q r a b c g h i d e f m n o
k| k l j q r p b c a h i g e f d n o m
l| l j k r p q c a b i g h f d e o m n
m| m n o g h i d e f p q r a b c j k l
n| n o m h i g e f d q r p b c a k l j
o| o m n i g h f d e r p q c a b l j k
p| p q r j k l m n o d e f g h i a b c
q| q r p k l j n o m e f d h i g b c a
r| r p q l j k o m n f d e i g h c a b
To figure out who are a, b, c, etc, list the elements of the group.
sage: G.list()
[((), ()),
((), (1,2,3)),
((), (1,3,2)),
((1,2), ()),
((1,2), (1,2,3)),
((1,2), (1,3,2)),
((1,2,3), ()),
((1,2,3), (1,2,3)),
((1,2,3), (1,3,2)),
((1,3,2), ()),
((1,3,2), (1,2,3)),
((1,3,2), (1,3,2)),
((2,3), ()),
((2,3), (1,2,3)),
((2,3), (1,3,2)),
((1,3), ()),
((1,3), (1,2,3)),
((1,3), (1,3,2))]
The multiplication table with elements is hard to read.
sage: G.multiplication_table(names ...
(more)