sig
type side = Left | Right
type axiom =
Com of Symb.symbol
| Ass of Symb.symbol
| Nil of Symb.symbol * Symb.symbol
| Idem of Symb.symbol
| Neu of Axiom.side * Symb.symbol * Symb.symbol
| Abs of Axiom.side * Symb.symbol * Symb.symbol
| Inv of Axiom.side * Symb.symbol * Symb.symbol * Symb.symbol
| Dis of Axiom.side * Symb.symbol * Symb.symbol
| InvDis of Axiom.side * Symb.symbol * Symb.symbol
| UDis of Symb.symbol * Symb.symbol * Symb.symbol
| Invol of Symb.symbol
| UNil of Symb.symbol * Symb.symbol
| UIdem of Symb.symbol
| InvNeu of Symb.symbol * Symb.symbol * Symb.symbol
type theory = Axiom.axiom list
val com : Symb.symbol -> Axiom.theory
val ass : Symb.symbol -> Axiom.theory
val nil : Symb.symbol -> Symb.symbol -> Axiom.theory
val idem : Symb.symbol -> Axiom.theory
val lneu : Symb.symbol -> Symb.symbol -> Axiom.theory
val rneu : Symb.symbol -> Symb.symbol -> Axiom.theory
val neu : Symb.symbol -> Symb.symbol -> Axiom.theory
val labs : Symb.symbol -> Symb.symbol -> Axiom.theory
val rabs : Symb.symbol -> Symb.symbol -> Axiom.theory
val abs : Symb.symbol -> Symb.symbol -> Axiom.theory
val linv : Symb.symbol -> Symb.symbol -> Symb.symbol -> Axiom.theory
val rinv : Symb.symbol -> Symb.symbol -> Symb.symbol -> Axiom.theory
val inv : Symb.symbol -> Symb.symbol -> Symb.symbol -> Axiom.theory
val ldis : Symb.symbol -> Symb.symbol -> Axiom.theory
val rdis : Symb.symbol -> Symb.symbol -> Axiom.theory
val dis : Symb.symbol -> Symb.symbol -> Axiom.theory
val linvdis : Symb.symbol -> Symb.symbol -> Axiom.theory
val rinvdis : Symb.symbol -> Symb.symbol -> Axiom.theory
val invdis : Symb.symbol -> Symb.symbol -> Axiom.theory
val udis : Symb.symbol -> Symb.symbol -> Symb.symbol -> Axiom.theory
val invol : Symb.symbol -> Axiom.theory
val unil : Symb.symbol -> Symb.symbol -> Axiom.theory
val uidem : Symb.symbol -> Axiom.theory
val invneu : Symb.symbol -> Symb.symbol -> Symb.symbol -> Axiom.theory
val eqnset_of_theory : Axiom.theory -> Equation.EqnSet.t
end