Module Unifyxor


module Unifyxor: sig .. end

val generate_row_ordering : int -> int array
val lookup : int array -> 'a array array -> int -> int -> 'a
val get_row : int array -> 'a array array -> int -> 'a array
val swap_lines : 'a array -> int -> int -> unit
val add_lines : int array -> int array array -> int array array -> int -> int -> unit
val pivot : int array -> int array array -> int -> int -> int -> bool
val gauss_elim : int array array -> int array array -> int array
val get_vars : int list -> int list -> Types_unify.term list list -> int list
val build_matrices : Types_unify.term list list ->
int -> int array -> int array -> int array array * int array array
val array_to_list : (int -> 'a) -> int array -> 'a list -> int -> 'a list
val is_possible : Types_unify.t_po -> int array -> int array -> int -> bool
exception Substitution_found of (int * Types_unify.term) list
val solve_triangular : int array array ->
int array array ->
int array ->
int array -> int array -> Types_unify.t_po -> (int * Types_unify.term) list
val unif_xor : Types_unify.term list list ->
Types_unify.t_po -> int list -> Types_unify.t_equal