Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

simp? and squeeze_simp #5901

Closed
jcommelin opened this issue Jan 26, 2021 · 2 comments
Closed

simp? and squeeze_simp #5901

jcommelin opened this issue Jan 26, 2021 · 2 comments
Labels
t-meta Tactics, attributes or user commands

Comments

@jcommelin
Copy link
Member

simp? outputs a Try this: simp only [foo, bar] message using a different mechanism than squeeze_simp.
Hopefully it is more reliable and faster.

Eventually simp? could replace squeeze_simp, but at the moment squeeze_simp support more variants of simp in its Try this output:

  • squeeze_simpa deals with simpa
  • squeeze_simp can work with extra config options, such as squeeze_simp { contextual := tt }
@bryangingechen
Copy link
Collaborator

Here's an example from Zulip where simp? doesn't include all necessary lemmas:

import data.setoid.partition

example {α : Type} {r : setoid α} (a : α): ∃! (b : set α), b ∈ r.classes ∧ a ∈ b :=
begin
  convert @setoid.classes_eqv_classes _ r a,
  simp? -- Try this: simp only [eq_self_iff_true]
end

squeeze_simp returns simp only [exists_prop, exists_unique_iff_exists], which does work.

@bryangingechen bryangingechen added the t-meta Tactics, attributes or user commands label Feb 18, 2021
@YaelDillies
Copy link
Collaborator

Lean 4 is around the corner and avoids the problem completely, so I think it's not worth fixing anymore.

@YaelDillies YaelDillies closed this as not planned Won't fix, can't repro, duplicate, stale Jan 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
t-meta Tactics, attributes or user commands
Projects
None yet
Development

No branches or pull requests

3 participants