theorem
Set.pairwiseDisjoint_sUnion
{α : Type u_1}
{ι : Type u_2}
[PartialOrder α]
[OrderBot α]
{f : ι → α}
{s : Set (Set ι)}
(h : DirectedOn (fun (x1 x2 : Set ι) => x1 ⊆ x2) s)
:
theorem
Set.PairwiseDisjoint.biUnion
{α : Type u_1}
{ι : Type u_2}
{ι' : Type u_3}
[CompleteLattice α]
{s : Set ι'}
{g : ι' → Set ι}
{f : ι → α}
(hs : s.PairwiseDisjoint fun (i' : ι') => ⨆ i ∈ g i', f i)
(hg : ∀ i ∈ s, (g i).PairwiseDisjoint f)
:
(⋃ i ∈ s, g i).PairwiseDisjoint f
Bind operation for Set.PairwiseDisjoint
. If you want to only consider finsets of indices, you
can use Set.PairwiseDisjoint.biUnion_finset
.
theorem
Set.PairwiseDisjoint.prod_left
{α : Type u_1}
{ι : Type u_2}
{ι' : Type u_3}
[CompleteLattice α]
{s : Set ι}
{t : Set ι'}
{f : ι × ι' → α}
(hs : s.PairwiseDisjoint fun (i : ι) => ⨆ i' ∈ t, f (i, i'))
(ht : t.PairwiseDisjoint fun (i' : ι') => ⨆ i ∈ s, f (i, i'))
:
(s ×ˢ t).PairwiseDisjoint f
If the suprema of columns are pairwise disjoint and suprema of rows as well, then everything is
pairwise disjoint. Not to be confused with Set.PairwiseDisjoint.prod
.
noncomputable def
Set.biUnionEqSigmaOfDisjoint
{α : Type u_1}
{ι : Type u_2}
{s : Set ι}
{f : ι → Set α}
(h : s.PairwiseDisjoint f)
:
↑(⋃ i ∈ s, f i) ≃ (i : ↑s) × ↑(f ↑i)
Equivalence between a disjoint bounded union and a dependent sum.
Equations
- Set.biUnionEqSigmaOfDisjoint h = (Equiv.setCongr ⋯).trans (Set.unionEqSigmaOfDisjoint ⋯)
Instances For
theorem
Pairwise.biUnion_injective
{α : Type u_1}
{ι : Type u_2}
{f : ι → Set α}
(h₀ : Pairwise (Disjoint on f))
(h₁ : ∀ (i : ι), (f i).Nonempty)
:
Function.Injective fun (s : Set ι) => ⋃ i ∈ s, f i