Congruence and related tactics #
This file contains the tactic congr'
, which is an extension of congr
, and various tactics
using congr'
internally.
congr'
has some advantages over congr
:
- It turns
↔
to equalities, before trying another congr lemma - You can write
congr' n
to give the maximal depth of recursive applications. This is useful ifcongr
breaks down the goal to aggressively, and the resulting goals are false. - You can write
congr' with ...
to docongr', ext ...
in a single tactic.
Other tactics in this file:
rcongr
: repeatedly applycongr'
andext.
convert
: likeexact
, but produces an equality goal if the type doesn't match.convert_to
: changes the goal, if you prove an equality between the old goal and the new goal.ac_change
: likeconvert_to
, but usesac_refl
to discharge the goals.