Metamath Proof Explorer


Theorem dfif6

Description: An alternate definition of the conditional operator df-if as a simple class abstraction. (Contributed by Mario Carneiro, 8-Sep-2013)

Ref Expression
Assertion dfif6 if ( 𝜑 , 𝐴 , 𝐵 ) = ( { 𝑥𝐴𝜑 } ∪ { 𝑥𝐵 ∣ ¬ 𝜑 } )

Proof

Step Hyp Ref Expression
1 unab ( { 𝑥 ∣ ( 𝑥𝐴𝜑 ) } ∪ { 𝑥 ∣ ( 𝑥𝐵 ∧ ¬ 𝜑 ) } ) = { 𝑥 ∣ ( ( 𝑥𝐴𝜑 ) ∨ ( 𝑥𝐵 ∧ ¬ 𝜑 ) ) }
2 df-rab { 𝑥𝐴𝜑 } = { 𝑥 ∣ ( 𝑥𝐴𝜑 ) }
3 df-rab { 𝑥𝐵 ∣ ¬ 𝜑 } = { 𝑥 ∣ ( 𝑥𝐵 ∧ ¬ 𝜑 ) }
4 2 3 uneq12i ( { 𝑥𝐴𝜑 } ∪ { 𝑥𝐵 ∣ ¬ 𝜑 } ) = ( { 𝑥 ∣ ( 𝑥𝐴𝜑 ) } ∪ { 𝑥 ∣ ( 𝑥𝐵 ∧ ¬ 𝜑 ) } )
5 df-if if ( 𝜑 , 𝐴 , 𝐵 ) = { 𝑥 ∣ ( ( 𝑥𝐴𝜑 ) ∨ ( 𝑥𝐵 ∧ ¬ 𝜑 ) ) }
6 1 4 5 3eqtr4ri if ( 𝜑 , 𝐴 , 𝐵 ) = ( { 𝑥𝐴𝜑 } ∪ { 𝑥𝐵 ∣ ¬ 𝜑 } )