]> matita.cs.unibo.it Git - helm.git/blobdiff - components/grafite_engine/grafiteEngine.ml
new more flexible compose, see matita/tests/compose.ma for a sample
[helm.git] / components / grafite_engine / grafiteEngine.ml
index 2d478673f94670e67c24b0da585ea9740105d809..ad4ae40c6c6d2e7f040e9ed82ec892d37db01cc6 100644 (file)
@@ -86,8 +86,8 @@ let rec tactic_of_ast status ast =
      Tactics.applyS ~term ~params ~dbd:(LibraryDb.instance ())
        ~universe:status.GrafiteTypes.universe
   | GrafiteAst.Assumption _ -> Tactics.assumption
-  | GrafiteAst.Auto (_,params) ->
-      AutoTactic.auto_tac ~params ~dbd:(LibraryDb.instance ()) 
+  | GrafiteAst.AutoBatch (_,params) ->
+      Tactics.auto ~params ~dbd:(LibraryDb.instance ()) 
        ~universe:status.GrafiteTypes.universe
   | GrafiteAst.Cases (_, what, (howmany, names)) ->
       Tactics.cases_intros ?howmany ~mk_fresh_name_callback:(namer_of names)
@@ -96,6 +96,9 @@ let rec tactic_of_ast status ast =
      Tactics.change ~pattern with_what
   | GrafiteAst.Clear (_,id) -> Tactics.clear id
   | GrafiteAst.ClearBody (_,id) -> Tactics.clearbody id
+  | GrafiteAst.Compose (_,t1,t2,times,(howmany, names)) -> 
+      Tactics.compose times t1 t2 ?howmany
+        ~mk_fresh_name_callback:(namer_of names)
   | GrafiteAst.Contradiction _ -> Tactics.contradiction
   | GrafiteAst.Constructor (_, n) -> Tactics.constructor n
   | GrafiteAst.Cut (_, ident, term) ->
@@ -682,7 +685,7 @@ let rec eval_command = {ec_go = fun ~disambiguate_command opts status
      status,[]
   | GrafiteAst.Print (_,"proofterm") ->
       let _,_,_,p,_, _ = GrafiteTypes.get_current_proof status in
-      print_endline (AutoTactic.pp_proofterm p);
+      print_endline (Auto.pp_proofterm p);
       status,[]
   | GrafiteAst.Print (_,_) -> status,[]
   | GrafiteAst.Qed loc ->