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' nto give the maximal depth of recursive applications. This is useful ifcongrbreaks 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_reflto discharge the goals.