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

[Merged by Bors] - feat: change Subgroup and Submonoid induction principles to work with induction #9861

Closed
wants to merge 9 commits into from

Conversation

eric-wieser
Copy link
Member

@eric-wieser eric-wieser commented Jan 20, 2024

Induction principles have to be fully dependent in order to work with the induction tactic. This is usually a good thing anyway, since the dependent version is often more convenient to use, and avoids the caller having to fumble with generalizing over an existential.

This changes the following induction principles (and their additive versions):

  • Submonoid.closure_induction_{left,right}
  • Subgroup.closure_induction_{left,right}
  • Subgroup.closure_induction'' (no submonoid version exists)

Arguments to these lemmas have also been renamed to drop the H, as seems to be preferred for induction lemmas.


Open in Gitpod

@eric-wieser eric-wieser added t-algebra Algebra (groups, rings, fields etc) awaiting-review awaiting-CI labels Jan 20, 2024
@eric-wieser eric-wieser changed the title Eric wieser/closure induction dependent feat: change Subgroup and Submonoid induction principles to work with induction Jan 20, 2024
@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added blocked-by-other-PR This PR depends on another PR to Mathlib and removed blocked-by-other-PR This PR depends on another PR to Mathlib labels Jan 20, 2024
@leanprover-community-mathlib4-bot
Copy link
Collaborator

This PR/issue depends on:

@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. label Jan 26, 2024
@eric-wieser eric-wieser removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. label Jan 27, 2024
Copy link
Collaborator

@adomani adomani left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a great improvement, thanks!

Mathlib/GroupTheory/Subgroup/Pointwise.lean Outdated Show resolved Hide resolved
@jcommelin
Copy link
Member

LGTM, module @_adomani's comment.

bors d+

@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Feb 8, 2024

✌️ eric-wieser can now approve this pull request. To approve and merge a pull request, simply reply with bors r+. More detailed instructions are available here.

@eric-wieser
Copy link
Member Author

bors merge

@github-actions github-actions bot added the ready-to-merge This PR has been sent to bors. label Feb 8, 2024
mathlib-bors bot pushed a commit that referenced this pull request Feb 8, 2024
…with `induction` (#9861)

Induction principles have to be fully dependent in order to work with the `induction` tactic. This is usually a good thing anyway, since the dependent version is often more convenient to use, and avoids the caller having to fumble with generalizing over an existential.

This changes the following induction principles (and their additive versions):
* `Submonoid.closure_induction_{left,right}`
* `Subgroup.closure_induction_{left,right}`
* `Subgroup.closure_induction''` (no submonoid version exists)

Arguments to these lemmas have also been renamed to drop the `H`, as seems to be preferred for `induction` lemmas.
@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Feb 8, 2024

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat: change Subgroup and Submonoid induction principles to work with induction [Merged by Bors] - feat: change Subgroup and Submonoid induction principles to work with induction Feb 8, 2024
@mathlib-bors mathlib-bors bot closed this Feb 8, 2024
@mathlib-bors mathlib-bors bot deleted the eric-wieser/closure-induction-dependent branch February 8, 2024 20:07
atarnoam pushed a commit that referenced this pull request Feb 9, 2024
…with `induction` (#9861)

Induction principles have to be fully dependent in order to work with the `induction` tactic. This is usually a good thing anyway, since the dependent version is often more convenient to use, and avoids the caller having to fumble with generalizing over an existential.

This changes the following induction principles (and their additive versions):
* `Submonoid.closure_induction_{left,right}`
* `Subgroup.closure_induction_{left,right}`
* `Subgroup.closure_induction''` (no submonoid version exists)

Arguments to these lemmas have also been renamed to drop the `H`, as seems to be preferred for `induction` lemmas.
dagurtomas pushed a commit that referenced this pull request Mar 22, 2024
…with `induction` (#9861)

Induction principles have to be fully dependent in order to work with the `induction` tactic. This is usually a good thing anyway, since the dependent version is often more convenient to use, and avoids the caller having to fumble with generalizing over an existential.

This changes the following induction principles (and their additive versions):
* `Submonoid.closure_induction_{left,right}`
* `Subgroup.closure_induction_{left,right}`
* `Subgroup.closure_induction''` (no submonoid version exists)

Arguments to these lemmas have also been renamed to drop the `H`, as seems to be preferred for `induction` lemmas.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
delegated ready-to-merge This PR has been sent to bors. t-algebra Algebra (groups, rings, fields etc)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants