Tactics are included in terms using Lean.Parser.Term.byTactic : term
`by tac` constructs a term of the expected type by running the tactic(s) `tac`.
by
, which is followed by a sequence of tactics in which each has the same indentation:
term ::= ... |by
`by tac` constructs a term of the expected type by running the tactic(s) `tac`.
tacticSeq
A sequence of tactics in brackets, or a delimiter-free indented sequence of tactics. Delimiter-free indentation is determined by the *first* tactic of the sequence.
Alternatively, explicit braces and semicolons may be used:
term ::= ... |by
`by tac` constructs a term of the expected type by running the tactic(s) `tac`.
A sequence of tactics in brackets, or a delimiter-free indented sequence of tactics. Delimiter-free indentation is determined by the *first* tactic of the sequence.
{ tactic* }
The syntax `{ tacs }` is an alternative syntax for `· tacs`. It runs the tactics in sequence, and fails if the goal is not solved.