Change log for Magma V2.28-5 (Released 21/12/2023)

Cohomology

·The function SplitExtension has been improved.

Commutative Algebra

·A problem when computing Groebner bases over prime finite fields with size between 32 and 61 bits has been fixed.

FP Groups

·A crash using Kernel on a homomorphism with codomain an fp-group has been adjusted to a runtime error. Bug reported by A. Previtali.

Finite Fields

·A crash when computing square roots of elements in non-standard double extension fields (arising from computing the order of jacobians of hyperelliptic curves) has been fixed. Reported by Y. Uesato.

Finite Groups

·New function SmallestGeneratingSet(G) which returns a generating set of smallest size for the finite group G (the algorithm is based on that described in: Andrea Lucchini and Dhara Thakkar, The Minimum Generating Set Problem [arXiv:2306.07633]).

·New function PermutationRepresentationQuotient(G, N) to compute a faithful permutation representation of G/N.

·New function IsAbstractFrobeniusGroup(G), which decides whether the finite group G has a faithful permutation represention with image equal to a Frobenius group. If so, then a Frobenius kernel and complement for this representation are returned in addition to true.

·New options for the type input parameter in the intrinsic ClassicalMaximals(type, d, q) have been introduced. These are: "SL", "GL", "Sp", "SU", "GU", "Omega+", "Omega-", "Omega", "SO+", "SO-", "SO", "GO+", "GO-" (which are the same as the options for ClassicalClasses(type, d, q) ). Their meaning is as expected. For example, ClassicalMaximals("SO+",8,5) returns representatives of the conjugacy classes of the maximal subgroups of the group returned by the intrinsic SOPlus(8,5).

·The function SearchForIsomorphism now has the parameter MaxStates.

·The database of primitive groups has been extended to degree 8191.

·Bugs in MaximalSubgroups for some special cases have been fixed.

Matrices

·A better error message is given when matrix inversion fails because an algorithm is not supported for the base ring.

·A crash in commutator computation where the base ring is not a field has been fixed.

Matrix Groups

·The algorithm for computing centralisers or conjugacy testing for elements of matrix groups now uses special algorithms for classical groups when applicable.

·New functions SpinClasses, SpinConjugacyClasses, SpinIsConjugate, SpinCentraliser, SpinCentralizer, SpinClassMap for spin groups.

·The function NameSimple now applies to matrix groups as well as permutation groups. Request of R. Keith Dennis.

PC Groups

·The function AutomorphismGroup for PC groups uses a new special algorithm by default when applicable.

·A bug in IrreducibleModules of a PC group has been fixed. Bug reported by E. O'Brien.

System

·New function Fork() which calls the Unix/Linux system call fork() and returns the process ID of the child (if now running as the parent), or returns 0 (if now running as the child).

·New function WaitForAllChildren() which waits until all children (created via Fork()) have exited.