case h
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
⊢ x ∈ t ↔ x ∈ ⋃ (i : ↑{i | i ∈ I}), (fun x => s ↑x ∩ t) i
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
⊢ t = ⋃ (i : ↑{i | i ∈ I}), (fun x => s ↑x ∩ t) i
ext x
case h
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
⊢ x ∈ t ↔ ∃ i, x ∈ (fun x => s ↑x ∩ t) i
case h
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
⊢ x ∈ t ↔ x ∈ ⋃ (i : ↑{i | i ∈ I}), (fun x => s ↑x ∩ t) i
rw [mem_iUnion]
case h.mp
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
⊢ x ∈ t → ∃ i, x ∈ (fun x => s ↑x ∩ t) i

case h.mpr
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
⊢ (∃ i, x ∈ (fun x => s ↑x ∩ t) i) → x ∈ t
case h
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
⊢ x ∈ t ↔ ∃ i, x ∈ (fun x => s ↑x ∩ t) i
constructor
case h.mp
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
x_in : x ∈ t
⊢ ∃ i, x ∈ (fun x => s ↑x ∩ t) i
case h.mp
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
⊢ x ∈ t → ∃ i, x ∈ (fun x => s ↑x ∩ t) i
intro x_in
case h.mp.intro.intro.intro.intro
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
x_in : x ∈ t
i : ι
hi : i ∈ I
H : x ∈ (fun h => s i) hi
⊢ ∃ i, x ∈ (fun x => s ↑x ∩ t) i
case h.mp
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
x_in : x ∈ t
⊢ ∃ i, x ∈ (fun x => s ↑x ∩ t) i
rcases mem_iUnion.mp (hI x_in) with ⟨i, _, ⟨hi, rfl⟩, H⟩
no goals
case h.mp.intro.intro.intro.intro
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
x_in : x ∈ t
i : ι
hi : i ∈ I
H : x ∈ (fun h => s i) hi
⊢ ∃ i, x ∈ (fun x => s ↑x ∩ t) i
refine' ⟨⟨i, hi⟩, ⟨H, x_in⟩⟩
case h.mpr.intro.intro
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
i : ↑{i | i ∈ I}
H : x ∈ t
⊢ x ∈ t
case h.mpr
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
⊢ (∃ i, x ∈ (fun x => s ↑x ∩ t) i) → x ∈ t
rintro ⟨i, -, H⟩
no goals
case h.mpr.intro.intro
α : Type u
β : Type v
ι✝ : Sort w
γ : Type x
ι : Type u_1
s : ι → Set α
t : Set α
tfin : Set.Finite t
h : t ⊆ ⋃ (i : ι), s i
I : Set ι
Ifin : Set.Finite I
hI : t ⊆ ⋃ (i : ι) (_ : i ∈ I), s i
x : α
i : ↑{i | i ∈ I}
H : x ∈ t
⊢ x ∈ t
exact H