/usr/lib/ocaml/ocplib-simplex/extSigs.mli is in ocplib-simplex-ocaml-dev 0.4-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | (******************************************************************************)
(* ocplib-simplex *)
(* *)
(* Copyright (C) --- OCamlPro --- See README.md for information and licensing *)
(******************************************************************************)
(*----------------------------------------------------------------------------*)
(** Interface required for variables *)
module type VAR_SIG = sig
(** type of variables used in the simplex *)
type t
(** compare function on vars *)
val compare : t -> t -> int
(** [is_int v] returns true if the variable has integer type,
and false otherwise *)
val is_int : t -> bool
(** [print fmt v] prints the given var *)
val print : Format.formatter -> t -> unit
end
(*----------------------------------------------------------------------------*)
(** Interface required for rationnals *)
module type R_SIG = sig
(** type of rationnal numbers *)
type t
val zero : t
val one : t
val m_one : t
val sign : t -> int (* can be used to quickly compare with zero *)
val compare : t -> t -> int
val equal : t -> t -> bool
val is_zero : t -> bool
val is_one : t -> bool
val is_m_one : t -> bool
val add : t -> t -> t
val sub : t -> t -> t
val div : t -> t -> t
val mult : t -> t -> t
val abs : t -> t
val is_int : t -> bool
val print : Format.formatter -> t -> unit
val to_string : t -> string
val min : t -> t -> t
val minus : t -> t
end
(*----------------------------------------------------------------------------*)
(** Interface of explanations *)
module type EX_SIG = sig
type t
val empty : t
val union : t -> t -> t
val print : Format.formatter -> t -> unit
end
|