Module 3-P.Memo
Memoised interface
type t
=
|
C of (r_t * (Iso.t * Iso.t) list) list
Priority class
|
R of (r_t * (Iso.t * Iso.t) list) list
Reducible priority class
val init : p_class list -> t list
val rewrite : Big.t -> Sparse.t -> t list -> Big.t * int
val scan : (Big.t * int) -> Sparse.t -> part_f:((Big.t * r_label * r_t list) list -> (int * (Big.t * r_label * r_t list)) list * (int * r_label * r_t list) list * int) -> t list -> ((int * (Big.t * r_label * r_t list)) list * (int * r_label * r_t list) list * int) * int
val scan_sim : Big.t -> Sparse.t -> t list -> (Big.t * r_label * r_t list) option * int