6 Totally and Mutually Permutable Products

6.1 Functions for Mutually and Totally Permutable Products

6.1-1 AreMutuallyPermutableSubgroups

6.1-2 OnePairShowingNotMutuallyPermutableSubgroups

6.1-3 AreTotallyPermutableSubgroups

6.1-4 OnePairShowingNotTotallyPermutableSubgroups

6.1-5 AreMutuallyFPermutableSubgroups

6.1-6 OnePairShowingNotMutuallyFPermutableSubgroups

6.1-7 AreTotallyFPermutableSubgroups

6.1-8 OnePairShowingNotTotallyFPermutableSubgroups

6.1-1 AreMutuallyPermutableSubgroups

6.1-2 OnePairShowingNotMutuallyPermutableSubgroups

6.1-3 AreTotallyPermutableSubgroups

6.1-4 OnePairShowingNotTotallyPermutableSubgroups

6.1-5 AreMutuallyFPermutableSubgroups

6.1-6 OnePairShowingNotMutuallyFPermutableSubgroups

6.1-7 AreTotallyFPermutableSubgroups

6.1-8 OnePairShowingNotTotallyFPermutableSubgroups

In recent years, many authors have considered totally and mutually permutable subgroups. Recall that two subgroups \(A\) and \(B\) of a group \(G\) are *totally permutable* if every subgroup of \(A\) permutes with every subgroup of \(B\), and they are *mutually permutable* if every subgroup of \(A\) permutes with \(B\) and every subgroup of \(B\) permutes with \(A\).

We have defined some "One" functions which give a pair of subgroups which do not permute and prove that two subgroups fail to have a certain property.

We have also defined some functions to work with totally and mutually \(f\)-permutable subgroups, where \(f\) is a subgroup embedding functor.

The functions of this chapter are defined in a preliminary state.

`‣ AreMutuallyPermutableSubgroups` ( [G, ]A, B ) | ( function ) |

This function returns `true`

if the subgroups \(A\) and \(B\) of \(G\) are mutually permutable subgroups, that is, every subgroup of \(A\) permutes with \(B\) and every subgroup of \(B\) permutes with \(A\), and `false`

otherwise. The method used here checks only that \(A\) permutes with all cyclic subgroups of \(B\) and that \(B\) permutes with all cyclic subgroups of \(A\).

The method with two arguments assume that \(A\) and \(B\) have a common supergroup.

`‣ OnePairShowingNotMutuallyPermutableSubgroups` ( [G, ]A, B ) | ( function ) |

This function returns a pair of the form [ `A`, `V` ] with `V` a subgroup of `B` or of the form [ `W`, `B` ] with `W` a subgroup of `A` in which both subgroups do not permute, or `fail`

if this pair does not exist because the product is mutually permutable.

`‣ AreTotallyPermutableSubgroups` ( [G, ]A, B ) | ( function ) |

This function returns `true`

if the subgroups \(A\) and \(B\) of \(G\) are totally permutable, that is, every subgroup of \(A\) permutes with every subgroup of \(B\), and `false`

otherwise. The method used here checks only that every cyclic subgroup of \(A\) permutes with every cyclic subgroup of \(B\).

The method with two arguments assume that \(A\) and \(B\) have a common supergroup.

`‣ OnePairShowingNotTotallyPermutableSubgroups` ( [G, ]A, B ) | ( function ) |

This function returns a pair of the form [ `V`, `W` ], with `V` a subgroup of `A` and `W` a subgroup of `B`, such that both subgroups do not permute, or `fail`

if this pair does not exist because the product is totally permutable.

gap> g:=SymmetricGroup(4); Sym( [ 1 .. 4 ] ) gap> a:=AlternatingGroup(4); Alt( [ 1 .. 4 ] ) gap> b:=Subgroup(g,[(1,2,3,4),(1,3)]); Group([ (1,2,3,4), (1,3) ]) gap> AreMutuallyPermutableSubgroups(g,a,b); true gap> AreTotallyPermutableSubgroups(g,a,b); false gap> OnePairShowingNotTotallyPermutableSubgroups(g,a,b); [ Group([ (2,3,4) ]), Group([ (1,2)(3,4) ]) ] gap> c:=Subgroup(g,[(1,2,3)]); Group([ (1,2,3) ]) gap> AreMutuallyPermutableSubgroups(g,a,c); false gap> OnePairShowingNotMutuallyPermutableSubgroups(g,a,c); [ Group([ (2,3,4) ]), Group([ (1,2,3) ]) ] gap> AreMutuallyPermutableSubgroups(a,c); false gap> g:=SymmetricGroup(3); Sym( [ 1 .. 3 ] ) gap> a:=AlternatingGroup(3); Alt( [ 1 .. 3 ] ) gap> b:=Subgroup(g,[(1,2)]); Group([ (1,2) ]) gap> AreTotallyPermutableSubgroups(g,a,b); true

`‣ AreMutuallyFPermutableSubgroups` ( [G, ]A, B, fA, fB ) | ( function ) |

This function returns `true`

if the subgroups `A` and `B` are mutually `f`-permutable, and `false`

otherwise. Here `A` and `B` are subgroups of `G` and `fA` and `fB` are, respectively, lists of subgroups of `A` and `B`, respectively.

In the version with four arguments, \(A\) and \(B\) are assumed to be subgroups of a common supergroup.

`‣ OnePairShowingNotMutuallyFPermutableSubgroups` ( [G, ]A, B, fA, fB ) | ( function ) |

This function returns a pair of the form [ `A`, `V` ] with `V` a subgroup in `fB` or `B` or of the form [ `W`, `B` ] with `W` a subgroup in `fA` or `A` in which both subgroups do not permute, or `fail`

if this pair does not exist. Here `A` and `B` are subgroups of `G` and `fA` and `fB` are lists of subgroups of `A` and `B`, respectively.

In the version with four arguments, `A` and `B` are assumed to be subgroups of a common supergroup.

`‣ AreTotallyFPermutableSubgroups` ( [G, ]A, B, fA, fB ) | ( function ) |

This function returns `true`

if the subgroup `A` permutes with all subgroups in the list `fB` and `B` permutes with all subgroups in the list `fA`, and `false`

otherwise. Here `A` and `B` are subgroups of `G`, `fA` is a list of subgroups of `A` and `fB` is a list of subgroups of `B`.

In the version with four arguments, `A` and `B` are assumed to be subgroups of a common supergroup.

`‣ OnePairShowingNotTotallyFPermutableSubgroups` ( [G, ]A, B, fA, fB ) | ( function ) |

This function returns a pair of the form [ `U`, `V` ] with `U` a subgroup in `fA` or `A` and `V` a subgroup in `fB` or `B` in which both subgroups do not permute, or `fail`

if this pair does not exist. Here `A` and `B` are subgroups of `G`, `fA` is a list of subgroups of `A` and `fB` is a list of subgroups of `B`.

In the version with two arguments, `A` and `B` are assumed to be subgroups of a common supergroup.

gap> g:=SymmetricGroup(4); Sym( [ 1 .. 4 ] ) gap> a:=AlternatingGroup(4); Alt( [ 1 .. 4 ] ) gap> b:=Subgroup(g,[(1,2,3,4),(1,3)]); Group([ (1,2,3,4), (1,3) ]) gap> AreTotallyFPermutableSubgroups(g,a,b, > MaximalSubgroups(a),MaximalSubgroups(b)); false gap> OnePairShowingNotTotallyFPermutableSubgroups(g,a,b, > MaximalSubgroups(a),MaximalSubgroups(b)); [ Group([ (1,2,3) ]), Group([ (2,4), (1,3)(2,4) ]) ] gap> AreTotallyFPermutableSubgroups(g,a,b,DerivedSeries(a),DerivedSeries(b)); true

generated by GAPDoc2HTML