[sledge] Implement Context.norm in terms of Theory.map_solvables

Reviewed By: jvillard

Differential Revision: D25883726

fbshipit-source-id: 8def2fd85
master
Josh Berdine 4 years ago committed by Facebook GitHub Bot
parent 5346f79100
commit 745369b83c

@ -68,12 +68,11 @@ end = struct
let subst s e = Term.map_trms ~f:(subst_ s) e let subst s e = Term.map_trms ~f:(subst_ s) e
(** apply a substitution to maximal non-interpreted subterms *) (** apply a substitution to maximal non-interpreted subterms *)
let rec norm s a = let norm s a =
[%trace] [%trace]
~call:(fun {pf} -> pf "@ %a" Trm.pp a) ~call:(fun {pf} -> pf "@ %a" Trm.pp a)
~retn:(fun {pf} -> pf "%a" Trm.pp) ~retn:(fun {pf} -> pf "%a" Trm.pp)
@@ fun () -> @@ fun () -> Theory.map_solvables ~f:(apply s) a
if Theory.is_interpreted a then Trm.map ~f:(norm s) a else apply s a
(** compose two substitutions *) (** compose two substitutions *)
let compose r s = let compose r s =

Loading…
Cancel
Save