## 7.15 Simple tactic macros

A simple example has more value than a long explanation:
`Coq` `<``Tactic Definition Solve := Simpl; Intros; Auto.`
`Solve is defined`
`Coq` `<``Tactic Definition ElimBoolRewrite b H1 H2 :=`
`Coq` `<``Elim b;`
`Coq` `<``[Intros; Rewrite H1; EAuto | Intros; Rewrite H2; EAuto ].`
`ElimBoolRewrite is defined`
The tactics macros are synchronous with the Coq section mechanism: a `Tactic Definition` is deleted from the current environment when you close the section (see also 2.4) where it was defined. If you want that a tactic macro defined in a module is usable in the modules that require it, you should put it outside of any section.
The chapter 10 gives examples of more complex user-defined tactics.