@@ -43,8 +43,7 @@ module type S = sig
4343 val add_predicate :
4444 t ->
4545 guard :Expr .t ->
46- name :string ->
47- Expr .gformula ->
46+ Expr .def ->
4847 Ex .t ->
4948 t
5049
@@ -162,11 +161,9 @@ module Make(X : Theory.S) : S with type tbox = X.t = struct
162161 guards = ME. add guard guarded env.guards
163162 }
164163
165-
166- let add_predicate env ~guard ~name gf ex =
167- let { Expr. ff = f; age = age; _ } = gf in
168- let env = { env with
169- matching = EM. max_term_depth env.matching (E. depth f) } in
164+ let add_predicate env ~guard E. { name; axiom = f ; _ } ex =
165+ let matching = EM. max_term_depth env.matching (E. depth f) in
166+ let env = { env with matching } in
170167 match E. form_view f with
171168 | E. Iff (f1 , f2 ) ->
172169 let p = E. mk_term (Symbols. name name) [] Ty. Tbool in
@@ -191,7 +188,7 @@ module Make(X : Theory.S) : S with type tbox = X.t = struct
191188 | E. Lemma _ ->
192189 let guarded = try ME. find guard env.guards with Not_found -> [] in
193190 { env with
194- predicates = ME. add f (guard, age , ex) env.predicates;
191+ predicates = ME. add f (guard, 0 , ex) env.predicates;
195192 guards = ME. add guard ((f, false ) :: guarded) env.guards
196193 }
197194 | E. Unit _ | E. Clause _ | E. Xor _
@@ -409,9 +406,9 @@ module Make(X : Theory.S) : S with type tbox = X.t = struct
409406 Timers. with_timer Timers. M_Match Timers. F_add_lemma @@ fun () ->
410407 add_lemma env gf dep
411408
412- let add_predicate env ~guard ~ name gf =
409+ let add_predicate env ~guard def dep =
413410 Timers. with_timer Timers. M_Match Timers. F_add_predicate @@ fun () ->
414- add_predicate env ~guard ~name gf
411+ add_predicate env ~guard def dep
415412
416413 let m_lemmas mconf env tbox selector ilvl =
417414 Timers. with_timer Timers. M_Match Timers. F_m_lemmas @@ fun () ->
0 commit comments