Metamath Proof Explorer


Theorem caovdig

Description: Convert an operation distributive law to class notation. (Contributed by NM, 25-Aug-1995) (Revised by Mario Carneiro, 26-Jul-2014)

Ref Expression
Hypothesis caovdig.1 ( ( 𝜑 ∧ ( 𝑥𝐾𝑦𝑆𝑧𝑆 ) ) → ( 𝑥 𝐺 ( 𝑦 𝐹 𝑧 ) ) = ( ( 𝑥 𝐺 𝑦 ) 𝐻 ( 𝑥 𝐺 𝑧 ) ) )
Assertion caovdig ( ( 𝜑 ∧ ( 𝐴𝐾𝐵𝑆𝐶𝑆 ) ) → ( 𝐴 𝐺 ( 𝐵 𝐹 𝐶 ) ) = ( ( 𝐴 𝐺 𝐵 ) 𝐻 ( 𝐴 𝐺 𝐶 ) ) )

Proof

Step Hyp Ref Expression
1 caovdig.1 ( ( 𝜑 ∧ ( 𝑥𝐾𝑦𝑆𝑧𝑆 ) ) → ( 𝑥 𝐺 ( 𝑦 𝐹 𝑧 ) ) = ( ( 𝑥 𝐺 𝑦 ) 𝐻 ( 𝑥 𝐺 𝑧 ) ) )
2 1 ralrimivvva ( 𝜑 → ∀ 𝑥𝐾𝑦𝑆𝑧𝑆 ( 𝑥 𝐺 ( 𝑦 𝐹 𝑧 ) ) = ( ( 𝑥 𝐺 𝑦 ) 𝐻 ( 𝑥 𝐺 𝑧 ) ) )
3 oveq1 ( 𝑥 = 𝐴 → ( 𝑥 𝐺 ( 𝑦 𝐹 𝑧 ) ) = ( 𝐴 𝐺 ( 𝑦 𝐹 𝑧 ) ) )
4 oveq1 ( 𝑥 = 𝐴 → ( 𝑥 𝐺 𝑦 ) = ( 𝐴 𝐺 𝑦 ) )
5 oveq1 ( 𝑥 = 𝐴 → ( 𝑥 𝐺 𝑧 ) = ( 𝐴 𝐺 𝑧 ) )
6 4 5 oveq12d ( 𝑥 = 𝐴 → ( ( 𝑥 𝐺 𝑦 ) 𝐻 ( 𝑥 𝐺 𝑧 ) ) = ( ( 𝐴 𝐺 𝑦 ) 𝐻 ( 𝐴 𝐺 𝑧 ) ) )
7 3 6 eqeq12d ( 𝑥 = 𝐴 → ( ( 𝑥 𝐺 ( 𝑦 𝐹 𝑧 ) ) = ( ( 𝑥 𝐺 𝑦 ) 𝐻 ( 𝑥 𝐺 𝑧 ) ) ↔ ( 𝐴 𝐺 ( 𝑦 𝐹 𝑧 ) ) = ( ( 𝐴 𝐺 𝑦 ) 𝐻 ( 𝐴 𝐺 𝑧 ) ) ) )
8 oveq1 ( 𝑦 = 𝐵 → ( 𝑦 𝐹 𝑧 ) = ( 𝐵 𝐹 𝑧 ) )
9 8 oveq2d ( 𝑦 = 𝐵 → ( 𝐴 𝐺 ( 𝑦 𝐹 𝑧 ) ) = ( 𝐴 𝐺 ( 𝐵 𝐹 𝑧 ) ) )
10 oveq2 ( 𝑦 = 𝐵 → ( 𝐴 𝐺 𝑦 ) = ( 𝐴 𝐺 𝐵 ) )
11 10 oveq1d ( 𝑦 = 𝐵 → ( ( 𝐴 𝐺 𝑦 ) 𝐻 ( 𝐴 𝐺 𝑧 ) ) = ( ( 𝐴 𝐺 𝐵 ) 𝐻 ( 𝐴 𝐺 𝑧 ) ) )
12 9 11 eqeq12d ( 𝑦 = 𝐵 → ( ( 𝐴 𝐺 ( 𝑦 𝐹 𝑧 ) ) = ( ( 𝐴 𝐺 𝑦 ) 𝐻 ( 𝐴 𝐺 𝑧 ) ) ↔ ( 𝐴 𝐺 ( 𝐵 𝐹 𝑧 ) ) = ( ( 𝐴 𝐺 𝐵 ) 𝐻 ( 𝐴 𝐺 𝑧 ) ) ) )
13 oveq2 ( 𝑧 = 𝐶 → ( 𝐵 𝐹 𝑧 ) = ( 𝐵 𝐹 𝐶 ) )
14 13 oveq2d ( 𝑧 = 𝐶 → ( 𝐴 𝐺 ( 𝐵 𝐹 𝑧 ) ) = ( 𝐴 𝐺 ( 𝐵 𝐹 𝐶 ) ) )
15 oveq2 ( 𝑧 = 𝐶 → ( 𝐴 𝐺 𝑧 ) = ( 𝐴 𝐺 𝐶 ) )
16 15 oveq2d ( 𝑧 = 𝐶 → ( ( 𝐴 𝐺 𝐵 ) 𝐻 ( 𝐴 𝐺 𝑧 ) ) = ( ( 𝐴 𝐺 𝐵 ) 𝐻 ( 𝐴 𝐺 𝐶 ) ) )
17 14 16 eqeq12d ( 𝑧 = 𝐶 → ( ( 𝐴 𝐺 ( 𝐵 𝐹 𝑧 ) ) = ( ( 𝐴 𝐺 𝐵 ) 𝐻 ( 𝐴 𝐺 𝑧 ) ) ↔ ( 𝐴 𝐺 ( 𝐵 𝐹 𝐶 ) ) = ( ( 𝐴 𝐺 𝐵 ) 𝐻 ( 𝐴 𝐺 𝐶 ) ) ) )
18 7 12 17 rspc3v ( ( 𝐴𝐾𝐵𝑆𝐶𝑆 ) → ( ∀ 𝑥𝐾𝑦𝑆𝑧𝑆 ( 𝑥 𝐺 ( 𝑦 𝐹 𝑧 ) ) = ( ( 𝑥 𝐺 𝑦 ) 𝐻 ( 𝑥 𝐺 𝑧 ) ) → ( 𝐴 𝐺 ( 𝐵 𝐹 𝐶 ) ) = ( ( 𝐴 𝐺 𝐵 ) 𝐻 ( 𝐴 𝐺 𝐶 ) ) ) )
19 2 18 mpan9 ( ( 𝜑 ∧ ( 𝐴𝐾𝐵𝑆𝐶𝑆 ) ) → ( 𝐴 𝐺 ( 𝐵 𝐹 𝐶 ) ) = ( ( 𝐴 𝐺 𝐵 ) 𝐻 ( 𝐴 𝐺 𝐶 ) ) )