sort generating system before printing
[sppoc.git] / Formel / omega.mli
blobcce677716602e90be7ddd2c0d6c4973b022e9f29
1 (**************************************************************************)
2 (** This file give the interface of the Omega module. **)
3 (**************************************************************************)
5 type relation
7 val of_variables : string list -> string list -> string list -> relation
8 val add_parameters : relation -> string list -> unit
9 val add_constraints : relation -> Matrix.t -> unit
10 val to_variables : relation -> string list * string list * string list
11 val get_parameters : relation -> string list
12 val get_constraints : relation -> Matrix.t
14 val of_systems :
15 string list -> string list -> string list -> Gen_syst.gen_syst list
16 -> relation
17 val of_function : string list -> Fonction.t -> relation
18 val to_systems :
19 relation -> string list * string list * string list * Gen_syst.gen_syst list
21 val empty : relation
22 val universe : relation
23 val identity : string list -> string list -> relation
25 val expand : relation -> string list -> string list -> relation
26 val simplify : relation -> unit
27 val dirty_print : relation -> unit
29 val is_empty : relation -> bool
30 val is_universe : relation -> bool
31 val is_set : relation -> bool
32 val is_exact : relation -> bool
33 val is_inexact : relation -> bool
34 val is_unknown : relation -> bool
36 val mustbe_subset : relation -> relation -> bool
37 val maybe_subset : relation -> relation -> bool
38 val is_subset : relation -> relation -> bool
40 val upper_bound : relation -> relation
41 val lower_bound : relation -> relation
42 val domain : relation -> relation
43 val range : relation -> relation
44 val inverse : relation -> relation
45 val complement : relation -> relation
46 val project_sym : relation -> relation
47 val project_on_sym : relation -> relation
48 val approximate : relation -> relation
49 val sample_solution : relation -> relation
50 val symbolic_solution : relation -> relation
52 val union : relation -> relation -> relation
53 val inter : relation -> relation -> relation
54 val diff : relation -> relation -> relation
55 val gist : relation -> relation -> relation
56 val restrict_domain : relation -> relation -> relation
57 val restrict_range : relation -> relation -> relation
58 val cross_product : relation -> relation -> relation
59 val compose : relation -> relation -> relation
60 val transitive_closure : relation -> relation -> relation
62 val print : relation -> unit