From 73e19ad0aac3cbd472b8add74594bbc158fce334 Mon Sep 17 00:00:00 2001 From: Chantal Keller Date: Wed, 28 Sep 2016 14:30:51 +0200 Subject: Uniform treatment of sat and smt tactics --- src/versions/native/smtcoq_plugin_native.ml4 | 4 ++-- src/versions/native/structures.ml | 3 +-- src/versions/standard/smtcoq_plugin_standard.ml4 | 4 ++-- src/versions/standard/structures.ml | 3 +-- src/zchaff/zchaff.ml | 8 ++------ 5 files changed, 8 insertions(+), 14 deletions(-) diff --git a/src/versions/native/smtcoq_plugin_native.ml4 b/src/versions/native/smtcoq_plugin_native.ml4 index e7c2f5b..d23bb5c 100644 --- a/src/versions/native/smtcoq_plugin_native.ml4 +++ b/src/versions/native/smtcoq_plugin_native.ml4 @@ -48,9 +48,9 @@ END TACTIC EXTEND Tactic_zchaff -| [ "zchaff" ] -> [ Structures.mk_sat_tactic Zchaff.tactic ] +| [ "zchaff" ] -> [ Structures.mk_tactic Zchaff.tactic ] END TACTIC EXTEND Tactic_verit -| [ "verit" ] -> [ Structures.mk_smt_tactic Verit.tactic ] +| [ "verit" ] -> [ Structures.mk_tactic Verit.tactic ] END diff --git a/src/versions/native/structures.ml b/src/versions/native/structures.ml index 1eb43fb..f6b21c8 100644 --- a/src/versions/native/structures.ml +++ b/src/versions/native/structures.ml @@ -108,11 +108,10 @@ let pr_constr_env = Printer.pr_constr_env let lift = Term.lift -let mk_sat_tactic tac = tac let tclTHENLAST = Tacticals.tclTHENLAST let assert_before = Tactics.assert_tac let vm_cast_no_check = Tactics.vm_cast_no_check -let mk_smt_tactic tac gl = +let mk_tactic tac gl = let env = Tacmach.pf_env gl in let sigma = Tacmach.project gl in let t = Tacmach.pf_concl gl in diff --git a/src/versions/standard/smtcoq_plugin_standard.ml4 b/src/versions/standard/smtcoq_plugin_standard.ml4 index 3666ee1..b714029 100644 --- a/src/versions/standard/smtcoq_plugin_standard.ml4 +++ b/src/versions/standard/smtcoq_plugin_standard.ml4 @@ -50,9 +50,9 @@ END TACTIC EXTEND Tactic_zchaff -| [ "zchaff" ] -> [ Structures.mk_sat_tactic Zchaff.tactic ] +| [ "zchaff" ] -> [ Structures.mk_tactic Zchaff.tactic ] END TACTIC EXTEND Tactic_verit -| [ "verit" ] -> [ Structures.mk_smt_tactic Verit.tactic ] +| [ "verit" ] -> [ Structures.mk_tactic Verit.tactic ] END diff --git a/src/versions/standard/structures.ml b/src/versions/standard/structures.ml index 519103f..4206006 100644 --- a/src/versions/standard/structures.ml +++ b/src/versions/standard/structures.ml @@ -132,11 +132,10 @@ let pr_constr_env env = Printer.pr_constr_env env Evd.empty let lift = Vars.lift -let mk_sat_tactic = Proofview.V82.tactic let tclTHENLAST = Tacticals.New.tclTHENLAST let assert_before = Tactics.assert_before let vm_cast_no_check t = Proofview.V82.tactic (Tactics.vm_cast_no_check t) -let mk_smt_tactic tac = +let mk_tactic tac = Proofview.Goal.nf_enter (fun gl -> let env = Proofview.Goal.env gl in let sigma = Proofview.Goal.sigma gl in diff --git a/src/zchaff/zchaff.ml b/src/zchaff/zchaff.ml index c9ed267..2f08d99 100644 --- a/src/zchaff/zchaff.ml +++ b/src/zchaff/zchaff.ml @@ -494,13 +494,9 @@ let make_proof pform_tbl atom_tbl env reify_form l = (* The whole tactic *) -let tactic gl = +let tactic env sigma t = SmtTrace.clear (); - let env = Tacmach.pf_env gl in - (* let sigma = Tacmach.project gl in *) - let t = Tacmach.pf_concl gl in - let (forall_let, concl) = Term.decompose_prod_assum t in let a, b = get_arguments concl in let reify_atom = Atom.create () in @@ -526,4 +522,4 @@ let tactic gl = let compose_lam_assum forall_let body = List.fold_left (fun t rd -> Term.mkLambda_or_LetIn rd t) body forall_let in let res = compose_lam_assum forall_let body in - Tactics.exact_no_check res gl + Structures.vm_cast_no_check res -- cgit