doc-src/IsarImplementation/Thy/Tactic.thy
changeset 46277 aea65ff733b4
parent 46276 8f1f33faf24e
child 46278 408e3acfdbb9
equal deleted inserted replaced
46276:8f1f33faf24e 46277:aea65ff733b4
   364   @{index_ML res_inst_tac: "Proof.context -> (indexname * string) list -> thm -> int -> tactic"} \\
   364   @{index_ML res_inst_tac: "Proof.context -> (indexname * string) list -> thm -> int -> tactic"} \\
   365   @{index_ML eres_inst_tac: "Proof.context -> (indexname * string) list -> thm -> int -> tactic"} \\
   365   @{index_ML eres_inst_tac: "Proof.context -> (indexname * string) list -> thm -> int -> tactic"} \\
   366   @{index_ML dres_inst_tac: "Proof.context -> (indexname * string) list -> thm -> int -> tactic"} \\
   366   @{index_ML dres_inst_tac: "Proof.context -> (indexname * string) list -> thm -> int -> tactic"} \\
   367   @{index_ML forw_inst_tac: "Proof.context -> (indexname * string) list -> thm -> int -> tactic"} \\
   367   @{index_ML forw_inst_tac: "Proof.context -> (indexname * string) list -> thm -> int -> tactic"} \\
   368   @{index_ML subgoal_tac: "Proof.context -> string -> int -> tactic"} \\
   368   @{index_ML subgoal_tac: "Proof.context -> string -> int -> tactic"} \\
       
   369   @{index_ML thin_tac: "Proof.context -> string -> int -> tactic"} \\
   369   @{index_ML rename_tac: "string list -> int -> tactic"} \\
   370   @{index_ML rename_tac: "string list -> int -> tactic"} \\
   370   \end{mldecls}
   371   \end{mldecls}
   371 
   372 
   372   \begin{description}
   373   \begin{description}
   373 
   374 
   385   the selected assumption is not deleted.
   386   the selected assumption is not deleted.
   386 
   387 
   387   \item @{ML subgoal_tac}~@{text "ctxt \<phi> i"} adds the proposition
   388   \item @{ML subgoal_tac}~@{text "ctxt \<phi> i"} adds the proposition
   388   @{text "\<phi>"} as local premise to subgoal @{text "i"}, and poses the
   389   @{text "\<phi>"} as local premise to subgoal @{text "i"}, and poses the
   389   same as a new subgoal @{text "i + 1"} (in the original context).
   390   same as a new subgoal @{text "i + 1"} (in the original context).
       
   391 
       
   392   \item @{ML thin_tac}~@{text "ctxt \<phi> i"} deletes the specified
       
   393   premise from subgoal @{text i}.  Note that @{text \<phi>} may contain
       
   394   schematic variables, to abbreviate the intended proposition; the
       
   395   first matching subgoal premise will be deleted.  Removing useless
       
   396   premises from a subgoal increases its readability and can make
       
   397   search tactics run faster.
   390 
   398 
   391   \item @{ML rename_tac}~@{text "names i"} renames the innermost
   399   \item @{ML rename_tac}~@{text "names i"} renames the innermost
   392   parameters of subgoal @{text i} according to the provided @{text
   400   parameters of subgoal @{text i} according to the provided @{text
   393   names} (which need to be distinct indentifiers).
   401   names} (which need to be distinct indentifiers).
   394 
   402