sig
  module type Transition =
    sig
      type 'a transition
      val empty : 'CfgTypes.Transition.transition
      val iter : ('-> unit) -> 'CfgTypes.Transition.transition -> unit
    end
  module type Cfg =
    sig
      type cfg
      type node
      module T : Transition
      type transition = CfgTypes.Cfg.node T.transition
      val nil : CfgTypes.Cfg.node
      val is_nil : CfgTypes.Cfg.node -> bool
      val create : unit -> CfgTypes.Cfg.cfg
      val node : CfgTypes.Cfg.cfg -> CfgTypes.Cfg.node
      val size : CfgTypes.Cfg.cfg -> int
      val set :
        CfgTypes.Cfg.cfg ->
        CfgTypes.Cfg.node -> CfgTypes.Cfg.transition -> unit
      val add :
        CfgTypes.Cfg.cfg -> CfgTypes.Cfg.transition -> CfgTypes.Cfg.node
      val next :
        CfgTypes.Cfg.cfg -> CfgTypes.Cfg.node -> CfgTypes.Cfg.transition
      val succ :
        CfgTypes.Cfg.cfg -> CfgTypes.Cfg.node -> CfgTypes.Cfg.node list
      val pred :
        CfgTypes.Cfg.cfg -> CfgTypes.Cfg.node -> CfgTypes.Cfg.node list
      val iter_succ :
        CfgTypes.Cfg.cfg ->
        (CfgTypes.Cfg.node -> unit) -> CfgTypes.Cfg.node -> unit
      val iter_pred :
        CfgTypes.Cfg.cfg ->
        (CfgTypes.Cfg.node -> unit) -> CfgTypes.Cfg.node -> unit
      val iter :
        (CfgTypes.Cfg.node -> CfgTypes.Cfg.transition -> unit) ->
        CfgTypes.Cfg.cfg -> unit
      val id : CfgTypes.Cfg.node -> int
      val nid : int -> CfgTypes.Cfg.node
      type marks
      val marks : CfgTypes.Cfg.cfg -> CfgTypes.Cfg.marks
      val once : CfgTypes.Cfg.marks -> CfgTypes.Cfg.node -> bool
      type dotter
      val pp_node :
        CfgTypes.Cfg.dotter ->
        CfgTypes.Cfg.node ->
        ('a, Format.formatter, unit) Pervasives.format -> 'a
      val pp_edge :
        CfgTypes.Cfg.dotter ->
        CfgTypes.Cfg.node ->
        CfgTypes.Cfg.node ->
        ('a, Format.formatter, unit) Pervasives.format -> 'a
      type pp_cfg =
          CfgTypes.Cfg.dotter ->
          CfgTypes.Cfg.node -> CfgTypes.Cfg.transition -> unit
      val dot : CfgTypes.Cfg.cfg -> CfgTypes.Cfg.pp_cfg -> string -> unit
    end
end