]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_tactics/nTactics.mli
Merge remote-tracking branch 'origin/ld-0.99.3'
[helm.git] / helm / software / components / ng_tactics / nTactics.mli
index 74bbcbcb4214a3565506a04d1dc81695bf746970..d9964ddcebbbd94f5b08b224f7792e36d294d4a0 100644 (file)
@@ -11,6 +11,8 @@
 
 (* $Id: nCic.ml 9058 2008-10-13 17:42:30Z tassi $ *)
 
+val print_tac: bool -> string -> 's NTacStatus.tactic
+
 val dot_tac: 's NTacStatus.tactic
 val branch_tac: ?force:bool -> 's NTacStatus.tactic
 val shift_tac: 's NTacStatus.tactic
@@ -21,17 +23,14 @@ val merge_tac: 's NTacStatus.tactic
 val focus_tac: int list -> 's NTacStatus.tactic
 val unfocus_tac: 's NTacStatus.tactic
 val skip_tac: 's NTacStatus.tactic
-val try_tac: 's NTacStatus.tactic -> 's NTacStatus.tactic
+val try_tac: NTacStatus.tac_status NTacStatus.tactic -> 's NTacStatus.tactic
 val repeat_tac: NTacStatus.tac_status NTacStatus.tactic -> 's NTacStatus.tactic
 
 val compare_statuses : past:#NTacStatus.lowtac_status -> present:#NTacStatus.lowtac_status -> int list * int list
 
 val distribute_tac:
  NTacStatus.lowtac_status NTacStatus.lowtactic -> 's NTacStatus.tactic
-val exec : ((int * Continuationals.Stack.switch) list * 'a list * 'b list *
-      [> `NoTag ])
-     list NTacStatus.status NTacStatus.tactic -> 
-  (#NTacStatus.lowtac_status as 's) -> Continuationals.goal -> 's
+val exec : NTacStatus.tac_status NTacStatus.tactic -> 's NTacStatus.lowtactic
 val block_tac: 's NTacStatus.tactic list -> 's NTacStatus.tactic
 
 val apply_tac: NTacStatus.tactic_term -> 's NTacStatus.tactic
@@ -44,6 +43,8 @@ val elim_tac:
    what:NTacStatus.tactic_term -> where:NTacStatus.tactic_pattern -> 
      's NTacStatus.tactic
 val intro_tac: string -> 's NTacStatus.tactic
+val intros_tac: 
+     ?names_ref:string list ref -> string list -> 's NTacStatus.tactic
 val cases_tac: 
    what:NTacStatus.tactic_term -> where:NTacStatus.tactic_pattern -> 
      's NTacStatus.tactic
@@ -70,20 +71,8 @@ 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;
-        eq_cache : NCicLibrary.unit_eq_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
+ (NTacStatus.tac_status -> 'c #NTacStatus.status) ->
+   (#NTacStatus.tac_status as 'f) -> 'f
 
 type indtyinfo 
 
@@ -95,3 +84,7 @@ val analyze_indty_tac :
 
 
 val find_in_context : 'a -> ('a * 'b) list -> int
+
+val inversion_tac: 
+   what:NTacStatus.tactic_term -> where:NTacStatus.tactic_pattern -> 
+     's NTacStatus.tactic