sig
module P :
sig
type t = string
type anot_type = unit
val anot_parser : unit -> unit
val pprint_keyid : 'a -> 'a
val key_val_of_string : 'a -> 'a
val compare_keyid : String.t -> String.t -> int
val pprint_anot : 'a -> string
end
module Nts_int :
sig
type anotations = Nts_functor.Make(P).anotations
type control = Nts_functor.Make(P).control = Nts_State of Ntsint.P.t
type transitions_container = Nts_functor.Make(P).transitions_container
type states_container = Nts_functor.Make(P).states_container
type inv_relation_container =
Nts_functor.Make(P).inv_relation_container
val fold_states_containers :
Ntsint.Nts_int.states_container ->
('a -> Ntsint.Nts_int.control -> 'a) -> 'a -> 'a
val fold_transitions_container :
Ntsint.Nts_int.transitions_container ->
('a ->
Ntsint.Nts_int.control ->
Nts_types.nts_trans_label list -> Ntsint.Nts_int.control -> 'a) ->
'a -> 'a
val add_transition_to_container :
Ntsint.Nts_int.transitions_container ->
Ntsint.Nts_int.control ->
Nts_types.nts_trans_label list -> Ntsint.Nts_int.control -> unit
val iter_transitions_container :
Ntsint.Nts_int.transitions_container ->
(Ntsint.Nts_int.control ->
Nts_types.nts_trans_label list -> Ntsint.Nts_int.control -> unit) ->
unit
val iter_state_container :
Ntsint.Nts_int.states_container ->
(Ntsint.Nts_int.control -> unit) -> unit
val is_state_in_inv_relation :
Ntsint.Nts_int.inv_relation_container ->
Ntsint.Nts_int.control -> bool
type nts_automaton =
Nts_functor.Make(P).nts_automaton = {
mutable nts_automata_name : string;
mutable anot : Ntsint.Nts_int.anotations;
init_states : Ntsint.Nts_int.states_container;
final_states : Ntsint.Nts_int.states_container;
error_states : Ntsint.Nts_int.states_container;
input_vars : Nts_types.nts_genrel_var list;
output_vars : Nts_types.nts_genrel_var list;
local_vars : Nts_types.nts_genrel_var list;
transitions : Ntsint.Nts_int.transitions_container;
}
type nts_system =
Nts_functor.Make(P).nts_system = {
nts_system_name : string;
nts_global_vars : Nts_types.nts_genrel_var list;
nts_automata : (string, Ntsint.Nts_int.nts_automaton) Hashtbl.t;
nts_gvars_init : Nts_types.nts_gen_relation list option;
nts_system_threads : (string * Big_int.big_int) list option;
}
type num_subrel_in_cautomaton =
Nts_functor.Make(P).num_subrel_in_cautomaton = {
subrel_root : Ntsint.Nts_int.control;
sub_vertices : Ntsint.Nts_int.states_container;
sub_transitions : Ntsint.Nts_int.transitions_container;
}
val pprint_control : Ntsint.Nts_int.control -> string
val anot_parser : unit -> Ntsint.Nts_int.anotations
val states_container_of_states_list :
Ntsint.Nts_int.control list -> Ntsint.Nts_int.states_container
val transitions_container_of_trans_list :
(Ntsint.Nts_int.control * Ntsint.Nts_int.control *
Nts_types.nts_trans_label list)
list -> Ntsint.Nts_int.transitions_container
val control_of_id_param : Ntsint.P.t -> Ntsint.Nts_int.control
val out_degree_of_control_state :
Ntsint.Nts_int.control -> Ntsint.Nts_int.nts_automaton -> int
val get_varinfo_by_optname :
Ntsint.Nts_int.nts_system ->
string option -> string -> Nts_types.nts_genrel_var option
val get_varinfo_by_optcautomaton :
Ntsint.Nts_int.nts_system ->
Ntsint.Nts_int.nts_automaton option ->
string -> Nts_types.nts_genrel_var option
val get_transition_from :
Ntsint.Nts_int.nts_automaton ->
Ntsint.Nts_int.control ->
Ntsint.Nts_int.control -> Nts_types.nts_trans_label list list option
val get_successor_of :
Ntsint.Nts_int.nts_automaton ->
Ntsint.Nts_int.control -> Ntsint.Nts_int.states_container
val get_one_state :
Ntsint.Nts_int.states_container -> Ntsint.Nts_int.control option
val is_successor_of :
Ntsint.Nts_int.nts_automaton ->
Ntsint.Nts_int.control -> Ntsint.Nts_int.control -> bool
val get_one_transition :
Ntsint.Nts_int.nts_automaton ->
Ntsint.Nts_int.control ->
Ntsint.Nts_int.control * Nts_types.nts_trans_label list
val pprint_inputvars : Ntsint.Nts_int.nts_automaton -> string
val pprint_outputvars : Ntsint.Nts_int.nts_automaton -> string
val pprint_localvars : Ntsint.Nts_int.nts_automaton -> string
val nt_system_var_cleaner :
Ntsint.Nts_int.nts_system -> Ntsint.Nts_int.nts_system
val nt_system_uncalled_subsystem_cleaner :
Ntsint.Nts_int.nts_system -> Ntsint.Nts_int.nts_system
val pprint_to_nts : Ntsint.Nts_int.nts_automaton -> string
val pprint_nts : Ntsint.Nts_int.nts_system -> string
val get_cautomaton_by_name :
Ntsint.Nts_int.nts_system -> string -> Ntsint.Nts_int.nts_automaton
val pprint_transitions :
string -> Ntsint.Nts_int.nts_automaton -> string
val compute_pred_relation :
Ntsint.Nts_int.nts_automaton -> Ntsint.Nts_int.inv_relation_container
val subgraph_between :
Ntsint.Nts_int.nts_automaton ->
Ntsint.Nts_int.control ->
Ntsint.Nts_int.control -> Ntsint.Nts_int.num_subrel_in_cautomaton
val pprint_subgraph_transitions :
Ntsint.Nts_int.num_subrel_in_cautomaton -> string
val cautomaton_of_subrelation_cautomaton :
string ->
Ntsint.Nts_int.nts_automaton ->
Ntsint.Nts_int.num_subrel_in_cautomaton ->
Ntsint.Nts_int.nts_automaton
end
end