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

chore: move @[simp] from exists_prop' to exists_prop #5529

Merged
merged 4 commits into from
Oct 1, 2024

Conversation

kmill
Copy link
Collaborator

@kmill kmill commented Sep 30, 2024

The lemma exists_const already handles all real cases of (∃ _ : α, p) ↔ p for general types α. If there are no Nonempty instances and this lemma cannot apply, it seems unlikely that simp could make more progress with (∃ _ : α, p) ↔ Nonempty α ∧ p.

However, it is still worth simplifying (∃ _ : p, q) to p ∧ q.

Also adds a Nonempty (Decidable a) instance, which is used by Mathlib.

The lemma `exists_const` already handles all real cases of `(∃ _ : α, p) ↔ p`. If there are no `Nonempty` instances and this lemma cannot apply, it seems unlikely that simp could make more progress with `(∃ _ : α, p) ↔ Nonempty α ∧ p`.
@kmill kmill changed the title chore: remove @[simp] from exists_prop' chore: move @[simp] from exists_prop' to exists_prop Sep 30, 2024
@github-actions github-actions bot added the toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN label Sep 30, 2024
leanprover-community-mathlib4-bot added a commit to leanprover-community/batteries that referenced this pull request Sep 30, 2024
leanprover-community-mathlib4-bot added a commit to leanprover-community/mathlib4 that referenced this pull request Sep 30, 2024
@leanprover-community-bot leanprover-community-bot added the breaks-mathlib This is not necessarily a blocker for merging: but there needs to be a plan label Sep 30, 2024
@leanprover-community-bot
Copy link
Collaborator

leanprover-community-bot commented Sep 30, 2024

Mathlib CI status (docs):

leanprover-community-mathlib4-bot added a commit to leanprover-community/batteries that referenced this pull request Sep 30, 2024
leanprover-community-mathlib4-bot added a commit to leanprover-community/batteries that referenced this pull request Sep 30, 2024
@fgdorais
Copy link
Contributor

fgdorais commented Sep 30, 2024

It only breaks two lines from Mathlib. In one case, this actually simplifies the proof a bit. I have a patch that I can push to the Mathlib branch lean-pr-testing-5529 if you want.

@kmill
Copy link
Collaborator Author

kmill commented Oct 1, 2024

@fgdorais Please do.

@leanprover-community-bot leanprover-community-bot added builds-mathlib CI has verified that Mathlib builds against this PR and removed breaks-mathlib This is not necessarily a blocker for merging: but there needs to be a plan labels Oct 1, 2024
@kim-em kim-em added this pull request to the merge queue Oct 1, 2024
Merged via the queue into leanprover:master with commit 949feb2 Oct 1, 2024
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
builds-mathlib CI has verified that Mathlib builds against this PR toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants