Skip to content
This repository has been archived by the owner on Jul 24, 2024. It is now read-only.

[Merged by Bors] - feat(logic/equiv, topology/homeomorph): split a product at a coordinate #16210

Closed
wants to merge 5 commits into from

Conversation

alreadydone
Copy link
Collaborator

@alreadydone alreadydone commented Aug 23, 2022

  • Add equiv.pi_split_at and homeomorph.pi_split_at: for every "coordinate" i : α, the bijection/homeomorphism between a product Π j : α, β j of types/topological spaces and the binary product of the type/space β i at that coordinate and the product Π j : {j // j ≠ i}, β j over all other coordinates.

  • Specialize to get the non-dependent versions, which concerns a product of copies of the same type/topological space, in which case non-dependent versions are friendlier to unification. Moreover, separate definitions allow the use of @[simps] to generate lemmas in which type casts are automatically removed.

Prerequisite of #15681, where we deal with cubes, which are products of copies of the unit interval, for the purpose of showing commutativity of homotopy groups.


Open in Gitpod

P.S. equiv.pi_split_at could alternatively be defined as

(equiv.pi_equiv_pi_subtype_prod _ β).trans $
  (equiv.Pi_subsingleton (λ j : {j // j = i}, β j) ⟨i, rfl⟩).prod_congr $ equiv.refl _

but it slows down decl post-processing of homeomorph.pi_split_at from 0.6-0.7s to ~3.0s, so I don't go for that.

@alreadydone alreadydone added awaiting-review The author would like community review of the PR awaiting-CI The author would like to see what CI has to say before doing more work. t-topology Topological spaces, uniform spaces, metric spaces, filters labels Aug 23, 2022
@github-actions github-actions bot removed the awaiting-CI The author would like to see what CI has to say before doing more work. label Aug 28, 2022
@j-loreaux
Copy link
Collaborator

While you're at it, can you also provide the homeomorphism version of pi_equiv_pi_subtype_prod to complete the parallelism?

@j-loreaux j-loreaux self-assigned this Oct 3, 2022
@alreadydone
Copy link
Collaborator Author

While you're at it, can you also provide the homeomorphism version of pi_equiv_pi_subtype_prod to complete the parallelism?

Sure; just pushed!

@j-loreaux
Copy link
Collaborator

maintainer merge

@github-actions
Copy link

github-actions bot commented Oct 4, 2022

🚀 Pull request has been placed on the maintainer queue by j-loreaux.

@dupuisf
Copy link
Collaborator

dupuisf commented Oct 4, 2022

bors r+

@github-actions github-actions bot 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 Oct 4, 2022
bors bot pushed a commit that referenced this pull request Oct 4, 2022
…te (#16210)

+ Add `equiv.pi_split_at` and `homeomorph.pi_split_at`: for every "coordinate" `i : α`, the bijection/homeomorphism between a product `Π j : α, β j` of types/topological spaces and the binary product of the type/space `β i` at that coordinate and the product `Π j : {j // j ≠ i}, β j` over all other coordinates.

+ Specialize to get the non-dependent versions, which concerns a product of copies of the same type/topological space, in which case non-dependent versions are friendlier to unification. Moreover, separate definitions allow the use of `@[simps]` to generate lemmas in which type casts are automatically removed.

Prerequisite of #15681, where we deal with cubes, which are products of copies of the unit interval, for the purpose of showing commutativity of homotopy groups.
@bors
Copy link

bors bot commented Oct 4, 2022

Build failed (retrying...):

bors bot pushed a commit that referenced this pull request Oct 4, 2022
…te (#16210)

+ Add `equiv.pi_split_at` and `homeomorph.pi_split_at`: for every "coordinate" `i : α`, the bijection/homeomorphism between a product `Π j : α, β j` of types/topological spaces and the binary product of the type/space `β i` at that coordinate and the product `Π j : {j // j ≠ i}, β j` over all other coordinates.

+ Specialize to get the non-dependent versions, which concerns a product of copies of the same type/topological space, in which case non-dependent versions are friendlier to unification. Moreover, separate definitions allow the use of `@[simps]` to generate lemmas in which type casts are automatically removed.

Prerequisite of #15681, where we deal with cubes, which are products of copies of the unit interval, for the purpose of showing commutativity of homotopy groups.
@bors
Copy link

bors bot commented Oct 4, 2022

Build failed:

@j-loreaux
Copy link
Collaborator

@alreadydone FYI: this build failed.

@alreadydone
Copy link
Collaborator Author

alreadydone commented Oct 5, 2022

Thanks! Could #16812 be merged soon? It seems it's causing the failure.

@alreadydone
Copy link
Collaborator Author

CI succeeded again. Could anyone put it on the queue?

@j-loreaux
Copy link
Collaborator

maintainer merge

@github-actions
Copy link

github-actions bot commented Oct 6, 2022

🚀 Pull request has been placed on the maintainer queue by j-loreaux.

@alreadydone alreadydone added awaiting-review The author would like community review of the PR and removed ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) labels Oct 6, 2022
@semorrison
Copy link
Collaborator

bors merge

@github-actions github-actions bot 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 Oct 7, 2022
bors bot pushed a commit that referenced this pull request Oct 7, 2022
…te (#16210)

+ Add `equiv.pi_split_at` and `homeomorph.pi_split_at`: for every "coordinate" `i : α`, the bijection/homeomorphism between a product `Π j : α, β j` of types/topological spaces and the binary product of the type/space `β i` at that coordinate and the product `Π j : {j // j ≠ i}, β j` over all other coordinates.

+ Specialize to get the non-dependent versions, which concerns a product of copies of the same type/topological space, in which case non-dependent versions are friendlier to unification. Moreover, separate definitions allow the use of `@[simps]` to generate lemmas in which type casts are automatically removed.

Prerequisite of #15681, where we deal with cubes, which are products of copies of the unit interval, for the purpose of showing commutativity of homotopy groups.
@bors
Copy link

bors bot commented Oct 7, 2022

Build failed (retrying...):

bors bot pushed a commit that referenced this pull request Oct 7, 2022
…te (#16210)

+ Add `equiv.pi_split_at` and `homeomorph.pi_split_at`: for every "coordinate" `i : α`, the bijection/homeomorphism between a product `Π j : α, β j` of types/topological spaces and the binary product of the type/space `β i` at that coordinate and the product `Π j : {j // j ≠ i}, β j` over all other coordinates.

+ Specialize to get the non-dependent versions, which concerns a product of copies of the same type/topological space, in which case non-dependent versions are friendlier to unification. Moreover, separate definitions allow the use of `@[simps]` to generate lemmas in which type casts are automatically removed.

Prerequisite of #15681, where we deal with cubes, which are products of copies of the unit interval, for the purpose of showing commutativity of homotopy groups.
@bors
Copy link

bors bot commented Oct 7, 2022

Build failed (retrying...):

bors bot pushed a commit that referenced this pull request Oct 7, 2022
…te (#16210)

+ Add `equiv.pi_split_at` and `homeomorph.pi_split_at`: for every "coordinate" `i : α`, the bijection/homeomorphism between a product `Π j : α, β j` of types/topological spaces and the binary product of the type/space `β i` at that coordinate and the product `Π j : {j // j ≠ i}, β j` over all other coordinates.

+ Specialize to get the non-dependent versions, which concerns a product of copies of the same type/topological space, in which case non-dependent versions are friendlier to unification. Moreover, separate definitions allow the use of `@[simps]` to generate lemmas in which type casts are automatically removed.

Prerequisite of #15681, where we deal with cubes, which are products of copies of the unit interval, for the purpose of showing commutativity of homotopy groups.
@bors
Copy link

bors bot commented Oct 8, 2022

Pull request successfully merged into master.

Build succeeded:

@bors bors bot changed the title feat(logic/equiv, topology/homeomorph): split a product at a coordinate [Merged by Bors] - feat(logic/equiv, topology/homeomorph): split a product at a coordinate Oct 8, 2022
@bors bors bot closed this Oct 8, 2022
@bors bors bot deleted the pi_split_at branch October 8, 2022 00:19
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) t-topology Topological spaces, uniform spaces, metric spaces, filters
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants