Metamath Proof Explorer


Theorem caov4d

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 ⊢ ( ( 𝜑 ∧ ( 𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆 ∧ 𝑧 ∈ 𝑆 ) ) → ( ( 𝑥 𝐹 𝑦 ) 𝐹 𝑧 ) = ( 𝑥 𝐹 ( 𝑦 𝐹 𝑧 ) ) )
caovd.4 ⊢ ( 𝜑 → 𝐷 ∈ 𝑆 )
caovd.cl ⊢ ( ( 𝜑 ∧ ( 𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆 ) ) → ( 𝑥 𝐹 𝑦 ) ∈ 𝑆 )
Assertion caov4d ( 𝜑 → ( ( 𝐴 𝐹 𝐵 ) 𝐹 ( 𝐶 𝐹 𝐷 ) ) = ( ( 𝐴 𝐹 𝐶 ) 𝐹 ( 𝐵 𝐹 𝐷 ) ) )

Proof

Step Hyp Ref Expression
1 caovd.1 ⊢ ( 𝜑 → 𝐴 ∈ 𝑆 )
2 caovd.2 ⊢ ( 𝜑 → 𝐵 ∈ 𝑆 )
3 caovd.3 ⊢ ( 𝜑 → 𝐶 ∈ 𝑆 )
4 caovd.com ⊢ ( ( 𝜑 ∧ ( 𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆 ) ) → ( 𝑥 𝐹 𝑦 ) = ( 𝑦 𝐹 𝑥 ) )
5 caovd.ass ⊢ ( ( 𝜑 ∧ ( 𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆 ∧ 𝑧 ∈ 𝑆 ) ) → ( ( 𝑥 𝐹 𝑦 ) 𝐹 𝑧 ) = ( 𝑥 𝐹 ( 𝑦 𝐹 𝑧 ) ) )
6 caovd.4 ⊢ ( 𝜑 → 𝐷 ∈ 𝑆 )
7 caovd.cl ⊢ ( ( 𝜑 ∧ ( 𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆 ) ) → ( 𝑥 𝐹 𝑦 ) ∈ 𝑆 )
8 2 3 6 4 5 caov12d ⊢ ( 𝜑 → ( 𝐵 𝐹 ( 𝐶 𝐹 𝐷 ) ) = ( 𝐶 𝐹 ( 𝐵 𝐹 𝐷 ) ) )
9 8 oveq2d ⊢ ( 𝜑 → ( 𝐴 𝐹 ( 𝐵 𝐹 ( 𝐶 𝐹 𝐷 ) ) ) = ( 𝐴 𝐹 ( 𝐶 𝐹 ( 𝐵 𝐹 𝐷 ) ) ) )
10 7 3 6 caovcld ⊢ ( 𝜑 → ( 𝐶 𝐹 𝐷 ) ∈ 𝑆 )
11 5 1 2 10 caovassd ⊢ ( 𝜑 → ( ( 𝐴 𝐹 𝐵 ) 𝐹 ( 𝐶 𝐹 𝐷 ) ) = ( 𝐴 𝐹 ( 𝐵 𝐹 ( 𝐶 𝐹 𝐷 ) ) ) )
12 7 2 6 caovcld ⊢ ( 𝜑 → ( 𝐵 𝐹 𝐷 ) ∈ 𝑆 )
13 5 1 3 12 caovassd ⊢ ( 𝜑 → ( ( 𝐴 𝐹 𝐶 ) 𝐹 ( 𝐵 𝐹 𝐷 ) ) = ( 𝐴 𝐹 ( 𝐶 𝐹 ( 𝐵 𝐹 𝐷 ) ) ) )
14 9 11 13 3eqtr4d ⊢ ( 𝜑 → ( ( 𝐴 𝐹 𝐵 ) 𝐹 ( 𝐶 𝐹 𝐷 ) ) = ( ( 𝐴 𝐹 𝐶 ) 𝐹 ( 𝐵 𝐹 𝐷 ) ) )