sig
type t
val of_dims : int option list -> Matrix.t
val compare : Matrix.t -> Matrix.t -> int
val pretty : Stdlib.Format.formatter -> Matrix.t -> unit
val pp_suffix_id : Stdlib.Format.formatter -> Matrix.t -> unit
val merge : int option list -> int option list -> int option list option
type env = {
size_var : Lang.F.var list;
size_val : Lang.F.term list;
index_var : Lang.F.var list;
index_val : Lang.F.term list;
index_range : Lang.F.pred list;
index_offset : Lang.F.term list;
length : Lang.F.term option;
}
val cc_tau : Lang.F.tau -> Matrix.t -> Lang.F.tau
val cc_env : Matrix.t -> Matrix.env
val cc_dims : int option list -> Lang.F.term list
end