type ('term, 'ident) tactic =
| LocatedTactic of CicAst.location * ('term, 'ident) tactic
- | Absurd
+ | Absurd of 'term
| Apply of 'term
| Assumption
| Change of 'term * 'term * 'ident option (* what, with what, where *)
| Exists
| Fold of reduction_kind * 'term
| Fourier
+ | Hint
| Injection of 'ident
| Intros of int option * 'ident list
| Left
| Check of 'term
| Proof
| Qed of string option
- (* name.
+ (** name.
* Name is needed when theorem was started without providing a name
*)
| Quit
| Theorem of thm_flavour * string option * 'term * 'term option
- (* flavour, name, type, body
+ (** flavour, name, type, body
* - name is absent when an unnamed theorem is being proved, tipically in
* interactive usage
* - body is present when its given along with the command, otherwise it
* will be given in proof editing mode using the tactical language
*)
+ | Redo of int option
+ | Undo of int option
type ('term, 'ident) tactical =
| LocatedTactical of CicAst.location * ('term, 'ident) tactical