sig
  type 'a invariant =
      int * (('a * A.Region.t) * A.Region.t) Util.Sequence.t * int
  type 'a t =
      [ `Feasible of [ `Strong | `Weak ]
      | `Invariant_backward of 'TraceChecker.T.Result.invariant
      | `Invariant_forward of 'TraceChecker.T.Result.invariant ]
  val print :
    (Format.formatter -> '-> unit) ->
    Format.formatter -> 'TraceChecker.T.Result.t -> unit
end