Metamath Proof Explorer


Theorem caov31d

Description: Rearrange arguments in a commutative, associative operation. (Contributed by NM, 26-Aug-1995) (Revised by Mario Carneiro, 30-Dec-2014)

Ref Expression
Hypotheses caovd.1 ( 𝜑𝐴𝑆 )
caovd.2 ( 𝜑𝐵𝑆 )
caovd.3 ( 𝜑𝐶𝑆 )
caovd.com ( ( 𝜑 ∧ ( 𝑥𝑆𝑦𝑆 ) ) → ( 𝑥 𝐹 𝑦 ) = ( 𝑦 𝐹 𝑥 ) )
caovd.ass ( ( 𝜑 ∧ ( 𝑥𝑆𝑦𝑆𝑧𝑆 ) ) → ( ( 𝑥 𝐹 𝑦 ) 𝐹 𝑧 ) = ( 𝑥 𝐹 ( 𝑦 𝐹 𝑧 ) ) )
Assertion caov31d ( 𝜑 → ( ( 𝐴 𝐹 𝐵 ) 𝐹 𝐶 ) = ( ( 𝐶 𝐹 𝐵 ) 𝐹 𝐴 ) )

Proof

Step Hyp Ref Expression
1 caovd.1 ( 𝜑𝐴𝑆 )
2 caovd.2 ( 𝜑𝐵𝑆 )
3 caovd.3 ( 𝜑𝐶𝑆 )
4 caovd.com ( ( 𝜑 ∧ ( 𝑥𝑆𝑦𝑆 ) ) → ( 𝑥 𝐹 𝑦 ) = ( 𝑦 𝐹 𝑥 ) )
5 caovd.ass ( ( 𝜑 ∧ ( 𝑥𝑆𝑦𝑆𝑧𝑆 ) ) → ( ( 𝑥 𝐹 𝑦 ) 𝐹 𝑧 ) = ( 𝑥 𝐹 ( 𝑦 𝐹 𝑧 ) ) )
6 4 1 3 caovcomd ( 𝜑 → ( 𝐴 𝐹 𝐶 ) = ( 𝐶 𝐹 𝐴 ) )
7 6 oveq1d ( 𝜑 → ( ( 𝐴 𝐹 𝐶 ) 𝐹 𝐵 ) = ( ( 𝐶 𝐹 𝐴 ) 𝐹 𝐵 ) )
8 1 2 3 4 5 caov32d ( 𝜑 → ( ( 𝐴 𝐹 𝐵 ) 𝐹 𝐶 ) = ( ( 𝐴 𝐹 𝐶 ) 𝐹 𝐵 ) )
9 3 2 1 4 5 caov32d ( 𝜑 → ( ( 𝐶 𝐹 𝐵 ) 𝐹 𝐴 ) = ( ( 𝐶 𝐹 𝐴 ) 𝐹 𝐵 ) )
10 7 8 9 3eqtr4d ( 𝜑 → ( ( 𝐴 𝐹 𝐵 ) 𝐹 𝐶 ) = ( ( 𝐶 𝐹 𝐵 ) 𝐹 𝐴 ) )