# byconj.gd RAQ Quandles by conjugation # The following outline of defining c DeclareCategory("IsConjugatorObject", IsMultiplicativeElement and IsLeftQuotientElement and IsLSelfDistElement and IsIdempotent); DeclareCategoryCollections("IsConjugatorObject"); DeclareAttribute("ConjugatorFamily", IsFamily); DeclareAttribute("ConjugatorType", IsFamily); DeclareSynonym("IsDefaultConjugatorObject", IsConjugatorObject and IsPositionalObjectOneSlotRep); # As far as I can tell, we are not losing any generality here; # to define the conjugator, we need the quotient on one side, to define # left quotients of conjugators we need the quotient on the other side, and # to prove it works we need associativity, which makes the underlying elements # of conjugator objects automatically group elements. DeclareAttribute("ConjugatorObj", IsMultiplicativeElementWithInverse); DeclareAttribute("UnderlyingMultiplicativeElement", IsConjugatorObject); # The meat of the matter: DeclareAttribute("ConjugationQuandle", IsGroup);