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

feat(data/equiv): pi_congr #2204

Merged
merged 11 commits into from
Mar 25, 2020
Merged

feat(data/equiv): pi_congr #2204

merged 11 commits into from
Mar 25, 2020

Conversation

semorrison
Copy link
Collaborator

@semorrison semorrison commented Mar 21, 2020

Provides

def Pi_congr_left' (P : α → Sort w) (e : α ≃ β) : (Π a, P a) ≃ (Π b, P (e.symm b)) := ...
def Pi_congr_left (P : β → Sort w) (e : α ≃ β) : (Π a, P (e a)) ≃ (Π b, P b) :=

and deduces the "general case"

def Pi_congr (W : α → Sort w) (Z : β → Sort z) (h₁ : α ≃ β) (h₂ : Π a : α, (W a ≃ Z (h₁ a))) : (Π a, W a) ≃ (Π b, Z b) := ...

Thanks @urkud and @digama0 for explaining the method(s) of proof!

These constructions prove useful in my equiv_rw tactic, which is coming along nicely.

@semorrison semorrison added the awaiting-review The author would like community review of the PR label Mar 21, 2020
@semorrison semorrison requested a review from digama0 March 21, 2020 16:59
src/data/equiv/basic.lean Show resolved Hide resolved

section
variables
(W : α → Sort w) (Z : β → Sort z) (h₁ : α ≃ β) (h₂ : Π a : α, (W a ≃ Z (h₁ a)))
Copy link
Member

Choose a reason for hiding this comment

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

Do you really want all of these arguments explicit?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I've made {W Z}, but left h₁ explicit.

@robertylewis robertylewis added ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) and removed awaiting-review The author would like community review of the PR labels Mar 25, 2020
@mergify mergify bot merged commit 1eae0be into master Mar 25, 2020
@robertylewis robertylewis deleted the equiv.pi_congr branch March 27, 2020 13:30
anrddh pushed a commit to anrddh/mathlib that referenced this pull request May 15, 2020
* feat(data/equiv): pi_congr

* docstrings

* change case for consistency

* tidying up

* switching names

* fixes

* Update src/data/equiv/basic.lean

* implicit arguments

Co-authored-by: Rob Lewis <Rob.y.lewis@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
anrddh pushed a commit to anrddh/mathlib that referenced this pull request May 16, 2020
* feat(data/equiv): pi_congr

* docstrings

* change case for consistency

* tidying up

* switching names

* fixes

* Update src/data/equiv/basic.lean

* implicit arguments

Co-authored-by: Rob Lewis <Rob.y.lewis@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants