sig
  type t = Start | NotSeen | Modif | SameVal
  val pretty : Format.formatter -> Datascope.State.t -> unit
  val merge : Datascope.State.t -> Datascope.State.t -> Datascope.State.t
  val equal : Datascope.State.t -> Datascope.State.t -> bool
  val test_and_merge :
    old:Datascope.State.t -> Datascope.State.t -> Datascope.State.t option
  val transfer : bool -> Datascope.State.t -> Datascope.State.t
end