Zulip Chat Archive
Stream: general
Topic: Maintainability tips
Weiyi Wang (Mar 11 2025 at 12:45):
I learned from https://leanprover-community.github.io/extras/simp.html that non-terminal simp
s are at risk of breaking when updating libraries. Are there similar pitfalls for other tactics? For example, how likely ring
can break after updating dependencies?
Floris van Doorn (Mar 11 2025 at 12:56):
ring
shouldn't break between versions (unless previous tactic produced a different goal state). The reason that simp
likely breaks is that it is an extendible tactics: we regularly add more @[simp]
-lemmas so that simp
can simplify more.
Something similar happens with gcongr
, although this breaks proofs less frequently.
Floris van Doorn (Mar 11 2025 at 12:58):
Most other extendible tactics are finishing tactics (positivity
, fun_prop
, measurability
, etc.), so it doesn't matter if they start doing more.
Weiyi Wang (Mar 11 2025 at 13:00):
That's good to know, and thanks for the mentioning gcongr because I also used it.
Last updated: May 02 2025 at 03:31 UTC