Metamath Proof Explorer


Theorem difin2

Description: Represent a class difference as an intersection with a larger difference. (Contributed by Jeff Madsen, 2-Sep-2009)

Ref Expression
Assertion difin2 ( 𝐴𝐶 → ( 𝐴𝐵 ) = ( ( 𝐶𝐵 ) ∩ 𝐴 ) )

Proof

Step Hyp Ref Expression
1 ssel ( 𝐴𝐶 → ( 𝑥𝐴𝑥𝐶 ) )
2 1 pm4.71d ( 𝐴𝐶 → ( 𝑥𝐴 ↔ ( 𝑥𝐴𝑥𝐶 ) ) )
3 2 anbi1d ( 𝐴𝐶 → ( ( 𝑥𝐴 ∧ ¬ 𝑥𝐵 ) ↔ ( ( 𝑥𝐴𝑥𝐶 ) ∧ ¬ 𝑥𝐵 ) ) )
4 eldif ( 𝑥 ∈ ( 𝐴𝐵 ) ↔ ( 𝑥𝐴 ∧ ¬ 𝑥𝐵 ) )
5 ancom ( ( ( 𝑥𝐶 ∧ ¬ 𝑥𝐵 ) ∧ 𝑥𝐴 ) ↔ ( 𝑥𝐴 ∧ ( 𝑥𝐶 ∧ ¬ 𝑥𝐵 ) ) )
6 elin ( 𝑥 ∈ ( ( 𝐶𝐵 ) ∩ 𝐴 ) ↔ ( 𝑥 ∈ ( 𝐶𝐵 ) ∧ 𝑥𝐴 ) )
7 eldif ( 𝑥 ∈ ( 𝐶𝐵 ) ↔ ( 𝑥𝐶 ∧ ¬ 𝑥𝐵 ) )
8 6 7 bianbi ( 𝑥 ∈ ( ( 𝐶𝐵 ) ∩ 𝐴 ) ↔ ( ( 𝑥𝐶 ∧ ¬ 𝑥𝐵 ) ∧ 𝑥𝐴 ) )
9 anass ( ( ( 𝑥𝐴𝑥𝐶 ) ∧ ¬ 𝑥𝐵 ) ↔ ( 𝑥𝐴 ∧ ( 𝑥𝐶 ∧ ¬ 𝑥𝐵 ) ) )
10 5 8 9 3bitr4i ( 𝑥 ∈ ( ( 𝐶𝐵 ) ∩ 𝐴 ) ↔ ( ( 𝑥𝐴𝑥𝐶 ) ∧ ¬ 𝑥𝐵 ) )
11 3 4 10 3bitr4g ( 𝐴𝐶 → ( 𝑥 ∈ ( 𝐴𝐵 ) ↔ 𝑥 ∈ ( ( 𝐶𝐵 ) ∩ 𝐴 ) ) )
12 11 eqrdv ( 𝐴𝐶 → ( 𝐴𝐵 ) = ( ( 𝐶𝐵 ) ∩ 𝐴 ) )