Skip to content

Commit 5c6facb

Browse files
committed
Fill in SetTheory.Set.iProd_equiv_pi
1 parent 612f0f7 commit 5c6facb

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

analysis/Analysis/Section_3_5.lean

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -236,10 +236,25 @@ noncomputable abbrev SetTheory.Set.iProd_equiv_prod_triple (X: ({0,1,2}:Set) →
236236
/-- Connections with Mathlib's `Set.pi` -/
237237
noncomputable abbrev SetTheory.Set.iProd_equiv_pi (I:Set) (X: I → Set) :
238238
iProd X ≃ Set.pi .univ (fun i:I ↦ ((X i):_root_.Set Object)) where
239-
toFun := sorry
240-
invFun := sorry
241-
left_inv := sorry
242-
right_inv := sorry
239+
toFun := fun t ↦
240+
have h := (mem_iProd _).mp t.property
241+
have x := h.choose
242+
fun i ↦ x i, by simp⟩
243+
invFun := fun x ↦
244+
⟨tuple fun i ↦ ⟨x.val i, by
245+
have := x.property i; simpa
246+
⟩, by apply tuple_mem_iProd⟩
247+
left_inv := by
248+
intro t; ext
249+
have h := (mem_iProd _).mp t.property
250+
rw [h.choose_spec, tuple_inj]
251+
right_inv := by
252+
intro x; ext i
253+
dsimp only []
254+
generalize_proofs _ h
255+
have ht := h.choose_spec
256+
rw [tuple_inj] at ht
257+
rw [←ht]
243258

244259

245260
/-

0 commit comments

Comments
 (0)