Add methods to check self distributivity of a magma.
This commit is contained in:
parent
11e6052a5e
commit
961ff3840f
@ -151,7 +151,7 @@ InstallGlobalFunction(LeftRackByMultiplicationTable,
|
||||
|
||||
InstallGlobalFunction(LeftRackByMultiplicationTableNC,
|
||||
T -> MagmaByMultiplicationTableCreatorNC(T, LeftRack,
|
||||
IsLeftQuotientElement and IsLSelfDistributiveElement and
|
||||
IsLeftQuotientElement and IsLSelfDistElement and
|
||||
IsMagmaByMultiplicationTableObj
|
||||
)
|
||||
);
|
||||
@ -171,7 +171,7 @@ end);
|
||||
|
||||
InstallGlobalFunction(RightRackByMultiplicationTableNC,
|
||||
T -> MagmaByMultiplicationTableCreatorNC(T, RightRack,
|
||||
IsRightQuotientElement and IsRSelfDistributiveElement and
|
||||
IsRightQuotientElement and IsRSelfDistElement and
|
||||
IsMagmaByMultiplicationTableObj
|
||||
)
|
||||
);
|
||||
@ -236,6 +236,17 @@ InstallMethod(RightPerms,
|
||||
return List(TransposedMat(MultiplicationTable(fam)), x->PermList(x));
|
||||
end);
|
||||
|
||||
## Distributivity checkers for when need be
|
||||
InstallMethod(IsLSelfDistributive, "for magma"
|
||||
[IsMagma],
|
||||
M -> IsLSelfDistributiveTable(MultiplicationTable(M))
|
||||
);
|
||||
|
||||
InstallMethod(IsRSelfDistributive, "for magma"
|
||||
[IsMagma],
|
||||
M -> IsRSelfDistributiveTable(MultiplicationTable(M))
|
||||
);
|
||||
|
||||
## Special case the Opposite function from LOOPS package, since the opposite
|
||||
## of a left quasigroup is a right quasigroup and vice versa
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user