X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fng_tactics%2FnTactics.mli;h=74bbcbcb4214a3565506a04d1dc81695bf746970;hb=12f96bd48b460d06f9858a334ee7c52d6831712f;hp=9afd918ead8c2fea14aab2e2a9108a6ad156a84e;hpb=b91d9e60b0a5f450d2725d4b9bb3ed7f81ef6d3a;p=helm.git diff --git a/helm/software/components/ng_tactics/nTactics.mli b/helm/software/components/ng_tactics/nTactics.mli index 9afd918ea..74bbcbcb4 100644 --- a/helm/software/components/ng_tactics/nTactics.mli +++ b/helm/software/components/ng_tactics/nTactics.mli @@ -12,9 +12,10 @@ (* $Id: nCic.ml 9058 2008-10-13 17:42:30Z tassi $ *) val dot_tac: 's NTacStatus.tactic -val branch_tac: 's NTacStatus.tactic +val branch_tac: ?force:bool -> 's NTacStatus.tactic val shift_tac: 's NTacStatus.tactic val pos_tac: int list -> 's NTacStatus.tactic +val case_tac: string -> 's NTacStatus.tactic val wildcard_tac: 's NTacStatus.tactic val merge_tac: 's NTacStatus.tactic val focus_tac: int list -> 's NTacStatus.tactic @@ -23,8 +24,14 @@ val skip_tac: 's NTacStatus.tactic val try_tac: 's 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 block_tac: 's NTacStatus.tactic list -> 's NTacStatus.tactic val apply_tac: NTacStatus.tactic_term -> 's NTacStatus.tactic @@ -47,6 +54,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 @@ -58,9 +66,32 @@ val assert_tac: ((string * [`Decl of NTacStatus.tactic_term | `Def of NTacStatus.tactic_term * NTacStatus.tactic_term]) list * NTacStatus.tactic_term) list -> 's NTacStatus.tactic -val auto_tac: - params:(NTacStatus.tactic_term list * (string * string) list) -> - 's NTacStatus.tactic - 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 + +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