sig
type ord = Greater | Equal | Smaller | Uncomparable
type 'a cmp = 'a -> 'a -> Order.ord
val partition :
'a Order.cmp ->
('a * 'a) list ->
('a * 'a) list * ('a * 'a) list * ('a * 'a) list * ('a * 'a) list
val int_of_ord : Order.ord -> int
val opp : Order.ord -> Order.ord
val comp : Order.ord Order.cmp
val ge : Order.ord -> bool
val le : Order.ord -> bool
val lex : 'a Order.cmp -> 'a list Order.cmp
exception IncompletePrecedence of Symb.symbol * Symb.symbol
exception IncompatibleStatus of Symb.symbol * Symb.symbol
val rpo_fail :
Parsetree.rpo_status Symb.SymbolMap.t ->
Symb.symbol Order.cmp -> Term.term Order.cmp
val rpo :
Parsetree.rpo_status Symb.SymbolMap.t ->
Symb.symbol Order.cmp -> Term.term Order.cmp
end