The reader should be aware that although loops are quasigroups, it is often the case in the literature that a property named P can differ for quasigroups and loops. For instance, a Steiner loop is not necessarily a Steiner quasigroup.
To avoid such ambivalences, we often include the noun Loop
or Quasigroup
as
part of the name of the property, e.g. IsSteinerQuasigroup
versus
IsSteinerLoop
.
On the other hand, some properties coincide for quasigroups and loops and we
therefore do not include Loop
, Quasigroup
as part of the name of the
property, e.g. IsCommutative
.
The following properties test if a quasigroup Q is associative and commutative:
IsAssociative(
Q ) P
IsCommutative(
Q ) P
A loop L is said to be power associativeindexpower associative!loopindexloop!power associative (resp. diassociativeindexdiassociative loopindexloop!diassociative) if every monogenic subloop of L (resp. every 2-generated subloop of L) is a group.
IsPowerAssociative(
L ) P
IsDiassociative(
L ) P
A loop L has the left inverse propertyindexinverse property!left if xλ(xy)=y for every x, y ∈ L, where xλ is the left inverse of x. Dually, L has the right inverse propertyindexinverse property!right if (yx)xρ=y for every x, y ∈ L, where xρ is the right inverse of x. If L has both the left and right inverse properties, it has the inverse propertyindexinverse property. We say that L has two-sided inversesindexinverse!two-sided if xλ=xρ for every x ∈ L.
HasLeftInverseProperty(
L ) P
HasRightInverseProperty(
L ) P
HasInverseProperty(
L ) P
HasTwosidedInverses(
L ) P
A loop has the weak inverse propertyindexinverse property!weak if (xy)λ x = yλ. Equivalently, a loop has the weak inverse property if x(yx)ρ = yρ.
HasWeakInverseProperty(
L ) P
According to Ar, a loop L has the automorphic inverse propertyindexinverse property!automorphic if (xy)λ = xλ yλ, or, equivalently, (xy)ρ = xρ yρ. (In particular, when L has two-sided inverses and the automorphic inverse property, it satisfies (xy)−1=x−1y−1.) Similarly, L has the antiautomorphic inverse propertyindexinverse property!antiautomorphic if (xy)λ=yλ xλ, or, equivalently, (xy)ρ = yρ xρ.
HasAutomorphicInverseProperty(
L ) P
HasAntiautomorphicInverseProperty(
L ) P
The following implications among inverse properties hold and are implemented in LOOPS:
A quasigroup Q is semisymmetricindexsemisymmetric quasigroupindexquasigroup!semisymmetric if (xy)x=y for every x, y ∈ Q. Equivalently, Q is semisymmetric if x(yx)=y for every x, y ∈ Q. A semisymmetric commutative quasigroup is known as totally symmetricindextotally symmetric quasigroupindexquasigroup!totally symmetric. Totally symmetric quasigroups are precisely quasigroups satisfying xy=x\y = x/y.
IsSemisymmetric(
Q ) P
IsTotallySymmetric(
Q ) P
A quasigroup Q is idempotentindexidempotent quasigroupindexquasigroup!idempotent if x2=x for every x ∈ Q. Idempotent totally symmetric quasigroups are known as Steiner quasigroupsindexSteiner!quasigroupindexquasigroup!Steiner. A quasigroup Q is unipotentindexunipotent quasigroupindexquasigroup!unipotent if x2=y2 for every x, y ∈ Q.
IsIdempotent(
Q ) P
IsSteinerQuasigroup(
Q ) P
IsUnipotent(
Q ) P
A quasigroup is left distributiveindexdistributive quasigroup!left if it satisfies x(yz)=(xy)(xz). Similarly, it is right distributiveindexdistributive quasigroup!right if it satisfies (xy)z=(xz)(yz). A distributive quasigroupindexdistributive quasigroupindexquasigroup!distributive is a quasigroup that is both left and right distributive. A quasigroup is called entropicindexentropic quasigroupindexquasigroup!entropic or medialindexmedial quasigroupindexquasigroup!medial if it satisfies (xy)(zw)=(xz)(yw).
IsLeftDistributive(
Q ) P
IsRightDistributive(
Q ) P
IsDistributive(
Q ) P
IsEntropic(
Q ) P
IsMedial(
Q ) P
In order to be compatible with GAP's terminology, we also support the synonyms
IsLDistributive(
Q ) P
IsRDistributive(
Q ) P
for IsLeftDistributive
and IsRightDistributive
respectively.
Following Fe and PhVo, a variety of loops is said to be of Bol-Moufang typeindexloop!of Bol-Moufang type if it is defined by a single identity of Bol-Moufang typeindexidentity of Bol-Moufang type, i.e., by an identity that:
There are several varieties related to loops of Bol-Moufang type. A loop is said to be alternativeindexalternative loopindexloop!alternative if it is both left and right alternative, and nuclear squareindexnuclear square loopindexloop!nuclear square if it is left, middle and right nuclear square.
Here are the corresponding LOOPS commands (argument L indicates that the property applies only to loops, argument Q indicates that the property applies also to quasigroups):
IsExtraLoop(
L ) P
IsMoufangLoop(
L ) P
IsCLoop(
L ) P
IsLeftBolLoop(
L ) P
IsRightBolLoop(
L ) P
IsLCLoop(
L ) P
IsRCLoop(
L ) P
IsLeftNuclearSquareLoop(
L ) P
IsMiddleNuclearSquareLoop(
L ) P
IsRightNuclearSquareLoop(
L ) P
IsNuclearSquareLoop(
L ) P
IsFlexible(
Q ) P
IsLeftAlternative(
Q ) P
IsRightAlternative(
Q ) P
IsAlternative(
Q ) P
While listing the varieties of loops of Bol-Moufang type, we have also listed all inclusions among them. These inclusions are built into LOOPS.
The following trivial example shows some of the implications and the naming conventions of LOOPS at work:
gap> L := LoopByCayleyTable( [ [ 1, 2 ], [ 2, 1 ] ] ); <loop of order 2> gap> [ IsLeftBolLoop( L ), L ] [ true, <left Bol loop of order 2> ] gap> [ HasIsLeftAlternativeLoop( L ), IsLeftAlternativeLoop( L ) ]; [ true, true ] gap> [ HasIsRightBolLoop( L ), IsRightBolLoop( L ) ]; [ false, true ] gap> L; <Moufang loop of order 2> gap> [ IsAssociative( L ), L ]; [ true, <associative loop of order 2> ]
The analogous terminology for quasigroups of Bol-Moufang type is not standard yet, and hence is not supported in LOOPS.
A loop is left power alternativeindexpower alternative loop!left if it is power associative and xn(xm y) = xn+my for every x, y and all integers n, m. Similarly, a loop is right power alternativeindexpower alternative loop!right if it is power associative and (xyn)ym = xyn+m for all x, y and all integers n, m. A loop that is both left and right power alternative is said to be power alternativeindexpower alternative loopindexloop!power alternative.
Left power alternative loops are left alternative and have the left inverse property. Left Bol loops and LC-loops are left power alternative.
IsLeftPowerAlternative(
L ) P
IsRightPowerAlternative(
L ) P
IsPowerAlternative(
L ) P
noindentA loop is left (resp. right) conjugacy closedindexconjugacy closed loop!leftindexconjugacy closed loop!right if its left (resp. right) translations are closed under conjugation. A loop that is both left and right conjugacy closed is called conjugacy closedindexconjugacy closed loopindexloop!conjugacy closed. It is common to refer to these loops as LCC, RCC, CC loops, respectively.
IsLCCLoop(
L ) P
IsRCCLoop(
L ) P
IsCCLoop(
L ) P
The equivalence LCC + RCC = CC is built into LOOPS.
We also support the synonyms
IsLeftConjugacyClosedLoop(
L ) P
IsRightConjugacyClosedLoop(
L ) P
IsConjugacyClosedLoop(
L ) P
A loop is OsbornindexOsborn loopindexloop!Osborn if it satisfies x(yz·x)=(xλ\y)(zx), where xλ is the left inverse of x. Both Moufang loops and CC-loops are Osborn.
IsOsbornLoop(
L ) P
An (even) code loopindexcode loopindexloop!code is a Moufang 2-loop with Frattini subloop of order 1 or 2. Code loops are extra and conjugacy closed.
IsCodeLoop(
L ) P
Steiner loopindexSteiner!loopindexloop!Steiner is an inverse property loop of exponent 2. Steiner loops are commutative.
IsSteinerLoop(
L ) P
A left (resp. right) Bol loop with the automorphic inverse property is known as left (resp. right) Bruck loopindexBruck loop!leftindexBruck loop!rightindexBruck loopindexloop!Bruck. Bruck loops are also known as K-loopsindexK-loopindexloop!K.
IsLeftBruckLoop(
L ) P
IsLeftKLoop(
L ) P
IsRightBruckLoop(
L ) P
IsRightKLoop(
L ) P
A loop whose all left (resp. middle, right) inner mappings are automorphisms is called a left (resp. middle, right) automorphic loopindexautomorphic loop!leftindexautomorphic loop!middleindexautomorphic loop!right. A loop whose every inner mapping is an automorphism is known as an automorphic loopindexautomorphic loopindexloop!automorphic. Diassociative automorphic loops are Moufang by KiKuPh. See the built-in filters for additional properties of automorphic loops.
IsLeftAutomorphicLoop(
L ) P
IsMiddleAutomorphicLoop(
L ) P
IsRightAutomorphicLoop(
L ) P
IsAutomorphicLoop(
L ) P
Automorphic loops have historically been called A-loopsindexA-loopindexloop!A. We therefore support the synonyms
IsLeftALoop(
L ) P
IsMiddleALoop(
L ) P
IsRightALoop(
L ) P
IsALoop(
L ) P
Be careful not to confuse IsALoop
and IsLoop
.
[Up] [Previous] [Next] [Index]
loops manual