sig type t val invariant : Invariant.S.t Invariant.inv end