]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/grafite_parser/grafiteParser.ml
...
[helm.git] / helm / software / components / grafite_parser / grafiteParser.ml
index ef354789a25dab4d0304990ebfd6a23b257c4575..3d5c662ca378447e94099f129925178cffbcbb3f 100644 (file)
@@ -250,9 +250,10 @@ EXTEND
         concl = tactic_term -> (List.rev hyps,concl) ] ->
          G.NAssert (loc, seqs)
     | IDENT "nauto"; params = auto_params -> G.NAuto (loc, params)
-    | SYMBOL "/"; num = OPT NUMBER ; SYMBOL "/" ->
-       let depth = match num with Some n -> n | None -> "1" in
-       G.NAuto (loc, ([],["slir","";"depth",depth]))
+    | SYMBOL "/"; num = OPT NUMBER ; SYMBOL "/" ; 
+       (univ,params) = auto_params ->
+        let depth = match num with Some n -> n | None -> "1" in
+          G.NAuto (loc, (univ,["slir","";"depth",depth]@params))
     | IDENT "ncases"; what = tactic_term ; where = pattern_spec ->
         G.NCases (loc, what, where)
     | IDENT "nchange"; what = pattern_spec; "with"; with_what = tactic_term -> 
@@ -422,7 +423,7 @@ EXTEND
     | "let" ; id1 = IDENT ; SYMBOL ":" ; t1 = tactic_term ;
       IDENT "such" ; IDENT "that" ; t2=tactic_term ; LPAREN ; 
       id2 = IDENT ; RPAREN -> 
-        G.ExistsElim (loc, `Auto ([],[]), id1, t1, id2, t2)
+        G.ExistsElim (loc, `Auto (None,[]), id1, t1, id2, t2)
     | just =
        [ IDENT "using"; t=tactic_term -> `Term t
        | params = auto_params -> `Auto params] ;
@@ -484,6 +485,7 @@ EXTEND
 ];
   auto_fixed_param: [
    [ IDENT "paramodulation"
+   | IDENT "demod"
    | IDENT "fast_paramod"
    | IDENT "paramod"
    | IDENT "slir"
@@ -497,13 +499,13 @@ EXTEND
    ]
 ];
   auto_params: [
-   [ params =
+    [ params = 
       LIST0 [
          i = auto_fixed_param -> i,""
        | i = auto_fixed_param ; SYMBOL "="; v = [ v = int ->
               string_of_int v | v = IDENT -> v ] -> i,v ]; 
-      tl = OPT [ IDENT "by"; tl = tactic_term_list1 -> tl] ->
-      (match tl with Some l -> l | None -> []),
+      tl = OPT [ IDENT "by"; tl = tactic_term_list1 -> tl] -> tl,
+      (* (match tl with Some l -> l | None -> []), *)
       params
    ]
 ];