Need the computation of IsTrival to rely on less, and do it for Right also.

This commit is contained in:
Glen Whitney 2017-10-29 21:46:21 -04:00
parent 3e7d40f11c
commit 34a4dc4d4a
1 changed files with 12 additions and 6 deletions

View File

@ -106,13 +106,19 @@ end);
# larger than one are non-trivial. # larger than one are non-trivial.
InstallImmediateMethod(IsTrivial, "for a left quasigroup", InstallImmediateMethod(IsTrivial, "for a left quasigroup",
IsLeftQuasigroup and HasSize, 1, IsLeftQuasigroup and HasSize, 1,
Q -> ForAll(LeftPerms(Q), p -> p = ()) function(Q)
); local gens;
gens := GeneratorsOfLeftQuasigroup(Q);
return ForAll(gens, x -> ForAll(gens, y -> x*y = y));
end);
InstallMethod(IsTrivial, "for a right quasigroup", InstallImmediateMethod(IsTrivial, "for a right quasigroup",
[IsRightQuasigroup], IsRightQuasigroup and HasSize, 1,
Q -> ForAll(RightPerms(Q), p -> p = ()) function(Q)
); local gens;
gens := GeneratorsOfRightQuasigroup(Q);
return ForAll(gens, x -> ForAll(gens, y -> y*x = y));
end);
## Convenience functions ## Convenience functions