]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_tactics/nTactics.mli
Implementation of ndestruct tactic (including destruction of constructor forms
[helm.git] / helm / software / components / ng_tactics / nTactics.mli
index b8659c3574fe63dfb34a170f052e2649408bc70f..25baae97a61815fcc4e7a58754dd82d3c329881a 100644 (file)
@@ -48,6 +48,7 @@ val rewrite_tac:
    what:NTacStatus.tactic_term -> where:NTacStatus.tactic_pattern -> 
     's NTacStatus.tactic
 val generalize_tac : where:NTacStatus.tactic_pattern -> 's NTacStatus.tactic
+val clear_tac : string list -> 's NTacStatus.tactic
 val reduce_tac: 
       reduction:[ `Normalize of bool | `Whd of bool ] ->
       where:NTacStatus.tactic_pattern -> 's NTacStatus.tactic
@@ -61,3 +62,29 @@ val assert_tac:
 
 val constructor_tac : 
         ?num:int -> args:NTacStatus.tactic_term list -> 's NTacStatus.tactic
+
+val atomic_tac :
+    (((int * Continuationals.Stack.switch) list * 'a list * 'b list *
+      [> `NoTag ])
+     list NTacStatus.status ->
+     (< auto_cache : NCicLibrary.automation_cache;
+        coerc_db : NCicCoercion.db; dump : NCicLibrary.obj list;
+        lstatus : LexiconEngine.lexicon_status; obj : NCic.obj;
+        set_coerc_db : NCicCoercion.db -> 'c;
+        set_coercion_status : 'd. (#NCicCoercion.g_status as 'd) -> 'c;
+        set_uhint_db : NCicUnifHint.db -> 'c;
+        set_unifhint_status : 'e. (#NCicUnifHint.g_status as 'e) -> 'c;
+        timestamp : NCicLibrary.timestamp; uhint_db : NCicUnifHint.db; .. >
+      as 'c)) ->
+    (#NTacStatus.tac_status as 'f) -> 'f
+
+type indtyinfo 
+
+val ref_of_indtyinfo : indtyinfo -> NReference.reference
+
+val analyze_indty_tac :
+    what:NTacStatus.tactic_term ->
+    indtyinfo option ref -> (#NTacStatus.tac_status as 'a) -> 'a
+
+
+val find_in_context : 'a -> ('a * 'b) list -> int