Zulip Chat Archive
Stream: new members
Topic: Inspecting simp
Bbbbbbbbba (Jun 06 2024 at 02:55):
Is there a way to see what simp
is actually doing?
llllvvuu (Jun 06 2024 at 03:00):
Bbbbbbbbba said:
Is there a way to see what
simp
is actually doing?
simp?
for the lemmas it used
set_option trace.Meta.Tactic.simp true
for the lemmas it tried but couldn't use
Bbbbbbbbba (Jun 06 2024 at 07:04):
llllvvuu said:
Bbbbbbbbba said:
Is there a way to see what
simp
is actually doing?
simp?
for the lemmas it used
set_option trace.Meta.Tactic.simp true
for the lemmas it tried but couldn't use
This is helpful, although I was thinking of something like turning a tactic-style proof to a completely term-style proof (so that it becomes insensitive to the simp
algorithm)
Mauricio Collares (Jun 06 2024 at 07:13):
You can always use show_term { simp }
, but the proof is likely not very human-readable.
llllvvuu (Jun 06 2024 at 07:33):
You can also #print
the entire declaration. Note that while term-mode proof is less sensitive to tactic implementations, it's more sensitive to individual lemmas and other things, so overall it may not be less prone to breakage
Bbbbbbbbba (Jun 06 2024 at 07:48):
I see, thanks!
Joachim Breitner (Jun 06 2024 at 08:51):
There is also this little, still somewhat experimental tool that expands a simp
proof into an elaborate calc
proof:
https://github.com/nomeata/lean-calcify
Last updated: May 02 2025 at 03:31 UTC