Skip to content

\(U_4(2):2 \cong S_4(3):2\) as a subgroup of Conway group Co3

The presentation and subgroup generators on this page come from presentation (13.1) in Đoković's paper.

Claim

If

\[ H=\langle a,c,d,e,f,g\rangle \cong U_4(2):2 \cong S_4(3):2, \]

then

\[ [\mathrm{Co}_3:H]=9,563,400. \]

We verify the claimed index, but not the claimed isomorphism type. The shared presentation adds twelve relations listed as consequences in the source. We do not verify that these relations are redundant here.

The code

The recorded run took about 3 minutes and 9 seconds.

Code
from libsemigroups_pybind11 import (
    Presentation,
    ToddCoxeter,
    congruence_kind,
    presentation,
)

p = Presentation("abcdefg")
p.contains_empty_word(True)

for letter in "abcdefg":
    presentation.add_rule(p, letter * 2, "")
for word in ("ac", "ad", "ae", "bd", "ce", "dg", "eg"):
    presentation.add_rule(p, word * 2, "")
for word, exponent in (
    ("ab", 3),
    ("cd", 3),
    ("de", 3),
    ("cfg", 3),
    ("bcfcf", 3),
):
    presentation.add_rule(p, word * exponent, "")
presentation.add_rule(p, "f" + "ag" * 3, "")
presentation.add_rule(p, "g" + "bf" * 3, "")
presentation.add_rule(p, "e" + "abc" * 3, "")
presentation.add_rule(p, "e" + "acg" * 4, "")
presentation.add_rule(p, "e" + "abcf" * 7, "")

# Consequences listed in (13.1), included as useful redundant relators.
for word, exponent in (
    ("af", 2),
    ("be", 2),
    ("bg", 2),
    ("df", 2),
    ("ef", 2),
    ("fg", 2),
    ("bc", 4),
    ("cf", 4),
    ("ag", 6),
    ("eg", 6),
    ("bcde", 4),
):
    presentation.add_rule(p, word * exponent, "")
presentation.add_rule(p, "a" + "cdef" * 4, "")

tc = ToddCoxeter(congruence_kind.onesided, p)
tc.strategy(ToddCoxeter.options.strategy.felsch).use_relations_in_extra(True)
for word in ("a", "c", "d", "e", "f", "g"):
    tc.add_generating_pair(word, "")

tc.run()
actual_index = tc.number_of_classes()
print(f"The index of the subgroup is {actual_index}")
if actual_index != 9_563_400:
    raise RuntimeError(f"expected index 9563400, got {actual_index}")

The output

Truncated output from the Python script
++++++++++++++++++++++++++++++++
#0: ToddCoxeter: RUN 0 START (strategy() = felsch)
#0: ToddCoxeter: |A| = 7, |R| = 36, |u| + |v| ∈ [2, 29], ∑(|u| + |v|) = 247
[... lines omitted ...]
#0: ToddCoxeter: RUN 0 STOP (finished)
#0: ToddCoxeter: run 0                |      lookahead |        lookbehind |              hlt |        felsch
#0: ToddCoxeter: num. phases          |              1 |                 0 |                0 |             1
#0: ToddCoxeter: time spent in phases |  37.313s (20%) |            - (0%) |           - (0%) | 2min31s (80%)
#0: ToddCoxeter: phase 0.2 = 37.734s  | run 0 = 3min9s | all runs = 3min9s | elapsed = 3min9s
The index of the subgroup is 9563400

The computed index is the claimed index: \(9,563,400\).