Commit 2025-06-10 22:11 4523c8f5

View on Github →

feat: let gcongr deal with implications (#25534) This PR implements support for the _ → _ relation in the gcongr tactic. This can be useful in its own right, but the main reason for this is to later implement the grw and gconvert tactic using this infrastructure. To be more specific, _ → _ is now supported as a relation, and as a constant. Supporting it as a constant is not necessary for the purpose of grw, but it seems natural to add support for it in this PR, so that lemmas like imp_imp_imp can be used by gcongr. To make _ → _ in gcongr work more easily out of the box, I've built in support for goals of the form r a b → r c d where r is a transitive relation (i.e. it implements isTrans α r). This behaviour can be overridden with a @[gcongr] tag, and this is in particular done for the < relation, since we want the new goals to use instead of <. #mathlib4 > Rewrite with inequalities @ 💬

Estimated changes