sig
  type t = Tools.ISet.t * Tools.Trans.t * int * Tools.ISSet.t
  val union : Petri.t -> Petri.t -> Petri.t
  val concat : Petri.t -> Petri.t -> Petri.t
  val pstar : Petri.t -> Petri.t
  val inter : Petri.t -> Petri.t -> Petri.t
  val trad : string Expr.expr -> Petri.t
  val progress : Tools.ISet.t -> Tools.ptrans -> Tools.ISet.t
  val read : Tools.readstate -> Tools.ptrans -> Tools.Trans.t -> Tools.MSet.t
  val simul : Petri.t -> Petri.t -> int * string * string Expr.ground option
end