Metamath Proof Explorer


Theorem caovcang

Description: Convert an operation cancellation law to class notation. (Contributed by NM, 20-Aug-1995) (Revised by Mario Carneiro, 30-Dec-2014)

Ref Expression
Hypothesis caovcang.1 ( ( 𝜑 ∧ ( 𝑥𝑇𝑦𝑆𝑧𝑆 ) ) → ( ( 𝑥 𝐹 𝑦 ) = ( 𝑥 𝐹 𝑧 ) ↔ 𝑦 = 𝑧 ) )
Assertion caovcang ( ( 𝜑 ∧ ( 𝐴𝑇𝐵𝑆𝐶𝑆 ) ) → ( ( 𝐴 𝐹 𝐵 ) = ( 𝐴 𝐹 𝐶 ) ↔ 𝐵 = 𝐶 ) )

Proof

Step Hyp Ref Expression
1 caovcang.1 ( ( 𝜑 ∧ ( 𝑥𝑇𝑦𝑆𝑧𝑆 ) ) → ( ( 𝑥 𝐹 𝑦 ) = ( 𝑥 𝐹 𝑧 ) ↔ 𝑦 = 𝑧 ) )
2 1 ralrimivvva ( 𝜑 → ∀ 𝑥𝑇𝑦𝑆𝑧𝑆 ( ( 𝑥 𝐹 𝑦 ) = ( 𝑥 𝐹 𝑧 ) ↔ 𝑦 = 𝑧 ) )
3 oveq1 ( 𝑥 = 𝐴 → ( 𝑥 𝐹 𝑦 ) = ( 𝐴 𝐹 𝑦 ) )
4 oveq1 ( 𝑥 = 𝐴 → ( 𝑥 𝐹 𝑧 ) = ( 𝐴 𝐹 𝑧 ) )
5 3 4 eqeq12d ( 𝑥 = 𝐴 → ( ( 𝑥 𝐹 𝑦 ) = ( 𝑥 𝐹 𝑧 ) ↔ ( 𝐴 𝐹 𝑦 ) = ( 𝐴 𝐹 𝑧 ) ) )
6 5 bibi1d ( 𝑥 = 𝐴 → ( ( ( 𝑥 𝐹 𝑦 ) = ( 𝑥 𝐹 𝑧 ) ↔ 𝑦 = 𝑧 ) ↔ ( ( 𝐴 𝐹 𝑦 ) = ( 𝐴 𝐹 𝑧 ) ↔ 𝑦 = 𝑧 ) ) )
7 oveq2 ( 𝑦 = 𝐵 → ( 𝐴 𝐹 𝑦 ) = ( 𝐴 𝐹 𝐵 ) )
8 7 eqeq1d ( 𝑦 = 𝐵 → ( ( 𝐴 𝐹 𝑦 ) = ( 𝐴 𝐹 𝑧 ) ↔ ( 𝐴 𝐹 𝐵 ) = ( 𝐴 𝐹 𝑧 ) ) )
9 eqeq1 ( 𝑦 = 𝐵 → ( 𝑦 = 𝑧𝐵 = 𝑧 ) )
10 8 9 bibi12d ( 𝑦 = 𝐵 → ( ( ( 𝐴 𝐹 𝑦 ) = ( 𝐴 𝐹 𝑧 ) ↔ 𝑦 = 𝑧 ) ↔ ( ( 𝐴 𝐹 𝐵 ) = ( 𝐴 𝐹 𝑧 ) ↔ 𝐵 = 𝑧 ) ) )
11 oveq2 ( 𝑧 = 𝐶 → ( 𝐴 𝐹 𝑧 ) = ( 𝐴 𝐹 𝐶 ) )
12 11 eqeq2d ( 𝑧 = 𝐶 → ( ( 𝐴 𝐹 𝐵 ) = ( 𝐴 𝐹 𝑧 ) ↔ ( 𝐴 𝐹 𝐵 ) = ( 𝐴 𝐹 𝐶 ) ) )
13 eqeq2 ( 𝑧 = 𝐶 → ( 𝐵 = 𝑧𝐵 = 𝐶 ) )
14 12 13 bibi12d ( 𝑧 = 𝐶 → ( ( ( 𝐴 𝐹 𝐵 ) = ( 𝐴 𝐹 𝑧 ) ↔ 𝐵 = 𝑧 ) ↔ ( ( 𝐴 𝐹 𝐵 ) = ( 𝐴 𝐹 𝐶 ) ↔ 𝐵 = 𝐶 ) ) )
15 6 10 14 rspc3v ( ( 𝐴𝑇𝐵𝑆𝐶𝑆 ) → ( ∀ 𝑥𝑇𝑦𝑆𝑧𝑆 ( ( 𝑥 𝐹 𝑦 ) = ( 𝑥 𝐹 𝑧 ) ↔ 𝑦 = 𝑧 ) → ( ( 𝐴 𝐹 𝐵 ) = ( 𝐴 𝐹 𝐶 ) ↔ 𝐵 = 𝐶 ) ) )
16 2 15 mpan9 ( ( 𝜑 ∧ ( 𝐴𝑇𝐵𝑆𝐶𝑆 ) ) → ( ( 𝐴 𝐹 𝐵 ) = ( 𝐴 𝐹 𝐶 ) ↔ 𝐵 = 𝐶 ) )