sig
  type t = rule
  val compare : t -> t -> int
  val fprintf : t Useful.fprintf
end