Metamath Proof Explorer


Theorem iunopab

Description: Move indexed union inside an ordered-pair class abstraction. (Contributed by Stefan O'Rear, 20-Feb-2015)

Ref Expression
Assertion iunopab 𝑧𝐴 { ⟨ 𝑥 , 𝑦 ⟩ ∣ 𝜑 } = { ⟨ 𝑥 , 𝑦 ⟩ ∣ ∃ 𝑧𝐴 𝜑 }

Proof

Step Hyp Ref Expression
1 elopab ( 𝑤 ∈ { ⟨ 𝑥 , 𝑦 ⟩ ∣ 𝜑 } ↔ ∃ 𝑥𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) )
2 1 rexbii ( ∃ 𝑧𝐴 𝑤 ∈ { ⟨ 𝑥 , 𝑦 ⟩ ∣ 𝜑 } ↔ ∃ 𝑧𝐴𝑥𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) )
3 rexcom4 ( ∃ 𝑧𝐴𝑥𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) ↔ ∃ 𝑥𝑧𝐴𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) )
4 rexcom4 ( ∃ 𝑧𝐴𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) ↔ ∃ 𝑦𝑧𝐴 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) )
5 r19.42v ( ∃ 𝑧𝐴 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) ↔ ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ ∃ 𝑧𝐴 𝜑 ) )
6 5 exbii ( ∃ 𝑦𝑧𝐴 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) ↔ ∃ 𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ ∃ 𝑧𝐴 𝜑 ) )
7 4 6 bitri ( ∃ 𝑧𝐴𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) ↔ ∃ 𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ ∃ 𝑧𝐴 𝜑 ) )
8 7 exbii ( ∃ 𝑥𝑧𝐴𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) ↔ ∃ 𝑥𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ ∃ 𝑧𝐴 𝜑 ) )
9 3 8 bitri ( ∃ 𝑧𝐴𝑥𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ 𝜑 ) ↔ ∃ 𝑥𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ ∃ 𝑧𝐴 𝜑 ) )
10 2 9 bitri ( ∃ 𝑧𝐴 𝑤 ∈ { ⟨ 𝑥 , 𝑦 ⟩ ∣ 𝜑 } ↔ ∃ 𝑥𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ ∃ 𝑧𝐴 𝜑 ) )
11 10 abbii { 𝑤 ∣ ∃ 𝑧𝐴 𝑤 ∈ { ⟨ 𝑥 , 𝑦 ⟩ ∣ 𝜑 } } = { 𝑤 ∣ ∃ 𝑥𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ ∃ 𝑧𝐴 𝜑 ) }
12 df-iun 𝑧𝐴 { ⟨ 𝑥 , 𝑦 ⟩ ∣ 𝜑 } = { 𝑤 ∣ ∃ 𝑧𝐴 𝑤 ∈ { ⟨ 𝑥 , 𝑦 ⟩ ∣ 𝜑 } }
13 df-opab { ⟨ 𝑥 , 𝑦 ⟩ ∣ ∃ 𝑧𝐴 𝜑 } = { 𝑤 ∣ ∃ 𝑥𝑦 ( 𝑤 = ⟨ 𝑥 , 𝑦 ⟩ ∧ ∃ 𝑧𝐴 𝜑 ) }
14 11 12 13 3eqtr4i 𝑧𝐴 { ⟨ 𝑥 , 𝑦 ⟩ ∣ 𝜑 } = { ⟨ 𝑥 , 𝑦 ⟩ ∣ ∃ 𝑧𝐴 𝜑 }