]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/tptp_grafite/tptp2grafite.ml
Added initial support for inversion principles in Matita NG.
[helm.git] / helm / software / components / tptp_grafite / tptp2grafite.ml
index 7950ca15d4e25e329ef2f3f331c6b2b082b5a7c0..244cd1d728975ebc22f000402bf99e5e589329ea 100644 (file)
@@ -221,7 +221,8 @@ let ng_generate_tactics fv ueq_case context arities =
   (HExtlib.list_mapi
    (fun (name,_) _-> 
      GA.Executable(floc,GA.NTactic(floc, 
-      [GA.NIntro (floc,name);GA.NDot(floc)])))
+      [GA.NIntro (floc,(try List.assoc name kw with Not_found -> name));
+       GA.NDot(floc)])))
    arities)
   @
   (HExtlib.list_mapi
@@ -236,8 +237,9 @@ let ng_generate_tactics fv ueq_case context arities =
       (fun _ -> 
         [GA.Executable(floc,GA.NTactic(floc, 
           [GA.NApply (floc,
-            PT.Appl [mk_ident "ex_intro";PT.Implicit;PT.Implicit;
-              PT.Implicit;PT.Implicit]);GA.NBranch floc]));
+            PT.Appl
+             [mk_ident "ex_intro";PT.Implicit `JustOne;PT.Implicit `JustOne;
+              PT.Implicit `JustOne;PT.Implicit `JustOne]);GA.NBranch floc]));
          GA.Executable(floc,GA.NTactic(floc, 
           [GA.NPos (floc,[2])]))])
       fv)) 
@@ -272,7 +274,9 @@ let ng_generate_tactics fv ueq_case context arities =
                GA.NSkip floc; GA.NMerge floc]))])
       fv)) 
  else [])@
-  [GA.Executable(floc,GA.Command(floc, GA.NQed(floc)))]
+    [GA.Executable(floc,GA.NTactic(floc,[GA.NTry(floc, GA.NAssumption(floc));
+                                        GA.NSemicolon(floc)]))]@
+  [GA.Executable(floc,GA.NCommand(floc, GA.NQed(floc)))]
 ;;
 
 let generate_tactics fv ueq_case =
@@ -437,8 +441,9 @@ let tptp2grafite ?(timeout=600) ?(def_depth=10) ?raw_preamble ~tptppath ~filenam
   let preamble = 
     match raw_preamble with
     | None -> 
-       pp (GA.Executable(floc,
-           GA.Command(floc,GA.Include(floc,true,"logic/equality.ma"))))
+      pp
+       (GA.Executable(floc,
+         GA.Command(floc,GA.Include(floc,true,`OldAndNew,"logic/equality.ma"))))
     | Some s -> s buri
   in
   let extra_statements_end = [] in