module Structure:sig..end
module IntMap:Map.Swith type key = int
module StringMap:Map.Swith type key = string
module Elems:Set.Swith type elt = int
val add_elems : int list -> Elems.t -> Elems.tval elems_of_list : int list -> Elems.tmodule Tuples:Set.Swith type elt = int array
val add_tuples : int array list -> Tuples.t -> Tuples.tval tuples_of_list : int array list -> Tuples.ttype structure
names are assumed to be named
by their decimal numeral.val compare_elems : int -> int -> int
Comparison function for structures.
val compare : structure -> structure -> intval equal : structure -> structure -> boolval elements : structure -> int listval elems : structure -> Elems.tval constants : structure -> (string * int) listval nbr_elems : structure -> intval relations : structure -> Tuples.t StringMap.tval functions : structure -> float IntMap.t StringMap.tval elem_nbr : structure -> string -> intval elem_name : structure -> int -> stringval names : structure -> int StringMap.tval inv_names : structure -> string IntMap.tval replace_names : structure ->
int StringMap.t -> string IntMap.t -> structureval rel_size : structure -> string -> intval rev_string_to_int_map : int StringMap.t -> string IntMap.tval rev_int_to_string_map : string IntMap.t -> int StringMap.tval empty_structure : unit -> structureval default_circle_structure : unit -> structureval empty_with_signat : (string * int) list -> structureval incident : structure -> int -> (string * int array list) liste in struc.val check_rel : structure -> string -> int array -> boolval rel_graph : string -> structure -> Tuples.tval rel_incidence : string -> structure -> Tuples.t arrayval fun_val : structure -> string -> int -> floatf on e in struc.val elems_with_val : structure -> string -> float -> int listf has value x in struc.val model_val : structure -> string -> int -> structuref to e in struc.val add_models : structure ->
string -> (int * structure) list -> structuref in struc, replacing previous.val f_signature : structure -> string listval rel_signature : structure -> (string * int) listval rel_sizes : structure -> (string * int) listval elem_str : structure -> int -> stringe as string.val rel_str : ?print_arity:bool ->
structure -> string -> Tuples.t -> stringrel_name with tuples ts as string.
Unless print_arity is false, print the arity if ts is empty.val ext_str : ?show_empty:bool -> structure -> stringstruc as string, in extensive form (not using
condensed representations like boards). If show_empty is false,
do not print the signatures of empty relations.val str : ?show_empty:bool -> ?show_models:bool -> structure -> stringstruc as string.val fprint_rel : ?print_arity:bool ->
structure ->
Format.formatter -> string * Tuples.t -> unitts.
Unless print_arity is false, print the arity if ts is empty.val fprint_fun : structure ->
Format.formatter -> string * float IntMap.t -> unitval fprint_ext_structure : show_empty:bool -> Format.formatter -> structure -> unitval fprint : show_empty:bool -> Format.formatter -> structure -> unitval print : ?show_empty:bool -> structure -> unitval sprint : ?show_empty:bool -> structure -> stringval board_elem_coords : string -> int * intNot_found if the name is not of proper format.val board_coords_name : int * int -> stringNot_found if the coordinates are out of bounds.val compare_diff : ?cmp_funs:(float -> float -> bool) ->
structure -> structure -> bool * stringval diff_elems : structure -> structure -> (int * string list) listval add_constant : structure -> string -> int -> structureexception Structure_mismatch of string
val add_elem : structure -> ?name:string -> int -> structuree to struc if it is not yet there. Return new structure.val add_new_elem : structure -> ?name:string -> unit -> structure * intstruc, return the updated structure and the
element.val find_elem : structure -> string -> intval find_or_new_elem : structure -> string -> structure * intval add_rel_name : string -> int -> structure -> structurern exists in struc, add if needed.val add_rel : structure -> string -> int array -> structuretp to relation rn in structure struc.val add_rel_named_elems : structure -> string -> string array -> structuretp to relation rn in structure struc.val unsafe_add_rel : structure -> string -> int array -> structuretp to relation rn in structure struc without
checking whether it and its elements already exist in the structure
and without checking arity.val add_rels : structure -> string -> int array list -> structuretps to relation rn in structure struc.val unsafe_add_rels : structure -> string -> int array list -> structuretps to relation rn in structure struc without
checking for elements existence and arity matching.val free_for_rel : string -> int -> structureval add_fun : structure -> string -> int * float -> structuree -> x to function fn in structure struc.val add_funs : structure -> string -> (int * float) list -> structureassgns to fn in structure struc.val change_fun : structure -> string -> string -> float -> structurefn assignment for element e to x in struc.val change_fun_int : structure -> string -> int -> float -> structureval create_from_lists : ?struc:structure ->
string list ->
(string * int option * string array list, string * string) Aux.choice list ->
(string * (string * float) list) list -> structureval create_from_lists_position : ?struc:structure ->
string list ->
(string * int option * string array list, string * string) Aux.choice list ->
structureval create_from_lists_range : float ->
?struc:structure ->
string list ->
(string * int option * string array list, string * string) Aux.choice list ->
structureval del_rel : structure -> string -> int array -> structuretp from relation rn in structure struc.val del_rels : structure -> string -> int array list -> structuretps from relation rn in structure struc.val clear_rels : ?remove_from_sig:bool ->
structure -> (string -> bool) -> structureval clear_fun : structure -> string -> structurestruc.val clear_names : structure -> structureval del_elem : structure -> int -> structuree and all incident relation tuples from struc.val del_elems : structure ->
int list -> structure * (string * int array list) listes and all incident relation tuples from
struc. Return the resulting structure and deleted relation tuples.val gc_elems : ?ignore_funs:bool -> structure -> structureignore_funs is given).val diffrels_struc : structure -> structure -> string list optionval trs_set_struc : structure -> string * Term.term * Term.term -> structureval struc_from_trs : string -> string * structureexception Board_parse_error of string
val parse_board : ?row_col_rels:string * string ->
?pos_initial:float * float ->
?pos_increment:float * float ->
?struc:structure -> string -> structure