Metamath Proof Explorer


Theorem dfif3

Description: Alternate definition of the conditional operator df-if . Note that ph is independent of x i.e. a constant true or false. (Contributed by NM, 25-Aug-2013) (Revised by Mario Carneiro, 8-Sep-2013)

Ref Expression
Hypothesis dfif3.1 ⊢ 𝐶 = { 𝑥 ∣ 𝜑 }
Assertion dfif3 if ( 𝜑 , 𝐴 , 𝐵 ) = ( ( 𝐴 ∩ 𝐶 ) ∪ ( 𝐵 ∩ ( V ∖ 𝐶 ) ) )

Proof

Step Hyp Ref Expression
1 dfif3.1 ⊢ 𝐶 = { 𝑥 ∣ 𝜑 }
2 dfif6 ⊢ if ( 𝜑 , 𝐴 , 𝐵 ) = ( { 𝑦 ∈ 𝐴 ∣ 𝜑 } ∪ { 𝑦 ∈ 𝐵 ∣ ¬ 𝜑 } )
3 biidd ⊢ ( 𝑥 = 𝑦 → ( 𝜑 ↔ 𝜑 ) )
4 3 cbvabv ⊢ { 𝑥 ∣ 𝜑 } = { 𝑦 ∣ 𝜑 }
5 1 4 eqtri ⊢ 𝐶 = { 𝑦 ∣ 𝜑 }
6 5 ineq2i ⊢ ( 𝐴 ∩ 𝐶 ) = ( 𝐴 ∩ { 𝑦 ∣ 𝜑 } )
7 dfrab3 ⊢ { 𝑦 ∈ 𝐴 ∣ 𝜑 } = ( 𝐴 ∩ { 𝑦 ∣ 𝜑 } )
8 6 7 eqtr4i ⊢ ( 𝐴 ∩ 𝐶 ) = { 𝑦 ∈ 𝐴 ∣ 𝜑 }
9 dfrab3 ⊢ { 𝑦 ∈ 𝐵 ∣ ¬ 𝜑 } = ( 𝐵 ∩ { 𝑦 ∣ ¬ 𝜑 } )
10 biidd ⊢ ( 𝑦 = 𝑧 → ( 𝜑 ↔ 𝜑 ) )
11 10 notabw ⊢ { 𝑦 ∣ ¬ 𝜑 } = ( V ∖ { 𝑧 ∣ 𝜑 } )
12 biidd ⊢ ( 𝑥 = 𝑧 → ( 𝜑 ↔ 𝜑 ) )
13 12 cbvabv ⊢ { 𝑥 ∣ 𝜑 } = { 𝑧 ∣ 𝜑 }
14 1 13 eqtri ⊢ 𝐶 = { 𝑧 ∣ 𝜑 }
15 14 difeq2i ⊢ ( V ∖ 𝐶 ) = ( V ∖ { 𝑧 ∣ 𝜑 } )
16 11 15 eqtr4i ⊢ { 𝑦 ∣ ¬ 𝜑 } = ( V ∖ 𝐶 )
17 16 ineq2i ⊢ ( 𝐵 ∩ { 𝑦 ∣ ¬ 𝜑 } ) = ( 𝐵 ∩ ( V ∖ 𝐶 ) )
18 9 17 eqtr2i ⊢ ( 𝐵 ∩ ( V ∖ 𝐶 ) ) = { 𝑦 ∈ 𝐵 ∣ ¬ 𝜑 }
19 8 18 uneq12i ⊢ ( ( 𝐴 ∩ 𝐶 ) ∪ ( 𝐵 ∩ ( V ∖ 𝐶 ) ) ) = ( { 𝑦 ∈ 𝐴 ∣ 𝜑 } ∪ { 𝑦 ∈ 𝐵 ∣ ¬ 𝜑 } )
20 2 19 eqtr4i ⊢ if ( 𝜑 , 𝐴 , 𝐵 ) = ( ( 𝐴 ∩ 𝐶 ) ∪ ( 𝐵 ∩ ( V ∖ 𝐶 ) ) )