Metamath Proof Explorer


Theorem gaass

Description: An "associative" property for group actions. (Contributed by Jeff Hankins, 11-Aug-2009) (Revised by Mario Carneiro, 13-Jan-2015)

Ref Expression
Hypotheses gaass.1 ⊢ 𝑋 = ( Base ‘ 𝐺 )
gaass.2 ⊢ + = ( +g ‘ 𝐺 )
Assertion gaass ( ( ⊕ ∈ ( 𝐺 GrpAct 𝑌 ) ∧ ( 𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑌 ) ) → ( ( 𝐴 + 𝐵 ) ⊕ 𝐶 ) = ( 𝐴 ⊕ ( 𝐵 ⊕ 𝐶 ) ) )

Proof

Step Hyp Ref Expression
1 gaass.1 ⊢ 𝑋 = ( Base ‘ 𝐺 )
2 gaass.2 ⊢ + = ( +g ‘ 𝐺 )
3 eqid ⊢ ( 0g ‘ 𝐺 ) = ( 0g ‘ 𝐺 )
4 1 2 3 isga ⊢ ( ⊕ ∈ ( 𝐺 GrpAct 𝑌 ) ↔ ( ( 𝐺 ∈ Grp ∧ 𝑌 ∈ V ) ∧ ( ⊕ : ( 𝑋 × 𝑌 ) ⟶ 𝑌 ∧ ∀ 𝑥 ∈ 𝑌 ( ( ( 0g ‘ 𝐺 ) ⊕ 𝑥 ) = 𝑥 ∧ ∀ 𝑦 ∈ 𝑋 ∀ 𝑧 ∈ 𝑋 ( ( 𝑦 + 𝑧 ) ⊕ 𝑥 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝑥 ) ) ) ) ) )
5 4 simprbi ⊢ ( ⊕ ∈ ( 𝐺 GrpAct 𝑌 ) → ( ⊕ : ( 𝑋 × 𝑌 ) ⟶ 𝑌 ∧ ∀ 𝑥 ∈ 𝑌 ( ( ( 0g ‘ 𝐺 ) ⊕ 𝑥 ) = 𝑥 ∧ ∀ 𝑦 ∈ 𝑋 ∀ 𝑧 ∈ 𝑋 ( ( 𝑦 + 𝑧 ) ⊕ 𝑥 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝑥 ) ) ) ) )
6 simpr ⊢ ( ( ( ( 0g ‘ 𝐺 ) ⊕ 𝑥 ) = 𝑥 ∧ ∀ 𝑦 ∈ 𝑋 ∀ 𝑧 ∈ 𝑋 ( ( 𝑦 + 𝑧 ) ⊕ 𝑥 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝑥 ) ) ) → ∀ 𝑦 ∈ 𝑋 ∀ 𝑧 ∈ 𝑋 ( ( 𝑦 + 𝑧 ) ⊕ 𝑥 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝑥 ) ) )
7 6 ralimi ⊢ ( ∀ 𝑥 ∈ 𝑌 ( ( ( 0g ‘ 𝐺 ) ⊕ 𝑥 ) = 𝑥 ∧ ∀ 𝑦 ∈ 𝑋 ∀ 𝑧 ∈ 𝑋 ( ( 𝑦 + 𝑧 ) ⊕ 𝑥 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝑥 ) ) ) → ∀ 𝑥 ∈ 𝑌 ∀ 𝑦 ∈ 𝑋 ∀ 𝑧 ∈ 𝑋 ( ( 𝑦 + 𝑧 ) ⊕ 𝑥 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝑥 ) ) )
8 5 7 simpl2im ⊢ ( ⊕ ∈ ( 𝐺 GrpAct 𝑌 ) → ∀ 𝑥 ∈ 𝑌 ∀ 𝑦 ∈ 𝑋 ∀ 𝑧 ∈ 𝑋 ( ( 𝑦 + 𝑧 ) ⊕ 𝑥 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝑥 ) ) )
9 oveq2 ⊢ ( 𝑥 = 𝐶 → ( ( 𝑦 + 𝑧 ) ⊕ 𝑥 ) = ( ( 𝑦 + 𝑧 ) ⊕ 𝐶 ) )
10 oveq2 ⊢ ( 𝑥 = 𝐶 → ( 𝑧 ⊕ 𝑥 ) = ( 𝑧 ⊕ 𝐶 ) )
11 10 oveq2d ⊢ ( 𝑥 = 𝐶 → ( 𝑦 ⊕ ( 𝑧 ⊕ 𝑥 ) ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝐶 ) ) )
12 9 11 eqeq12d ⊢ ( 𝑥 = 𝐶 → ( ( ( 𝑦 + 𝑧 ) ⊕ 𝑥 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝑥 ) ) ↔ ( ( 𝑦 + 𝑧 ) ⊕ 𝐶 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝐶 ) ) ) )
13 oveq1 ⊢ ( 𝑦 = 𝐴 → ( 𝑦 + 𝑧 ) = ( 𝐴 + 𝑧 ) )
14 13 oveq1d ⊢ ( 𝑦 = 𝐴 → ( ( 𝑦 + 𝑧 ) ⊕ 𝐶 ) = ( ( 𝐴 + 𝑧 ) ⊕ 𝐶 ) )
15 oveq1 ⊢ ( 𝑦 = 𝐴 → ( 𝑦 ⊕ ( 𝑧 ⊕ 𝐶 ) ) = ( 𝐴 ⊕ ( 𝑧 ⊕ 𝐶 ) ) )
16 14 15 eqeq12d ⊢ ( 𝑦 = 𝐴 → ( ( ( 𝑦 + 𝑧 ) ⊕ 𝐶 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝐶 ) ) ↔ ( ( 𝐴 + 𝑧 ) ⊕ 𝐶 ) = ( 𝐴 ⊕ ( 𝑧 ⊕ 𝐶 ) ) ) )
17 oveq2 ⊢ ( 𝑧 = 𝐵 → ( 𝐴 + 𝑧 ) = ( 𝐴 + 𝐵 ) )
18 17 oveq1d ⊢ ( 𝑧 = 𝐵 → ( ( 𝐴 + 𝑧 ) ⊕ 𝐶 ) = ( ( 𝐴 + 𝐵 ) ⊕ 𝐶 ) )
19 oveq1 ⊢ ( 𝑧 = 𝐵 → ( 𝑧 ⊕ 𝐶 ) = ( 𝐵 ⊕ 𝐶 ) )
20 19 oveq2d ⊢ ( 𝑧 = 𝐵 → ( 𝐴 ⊕ ( 𝑧 ⊕ 𝐶 ) ) = ( 𝐴 ⊕ ( 𝐵 ⊕ 𝐶 ) ) )
21 18 20 eqeq12d ⊢ ( 𝑧 = 𝐵 → ( ( ( 𝐴 + 𝑧 ) ⊕ 𝐶 ) = ( 𝐴 ⊕ ( 𝑧 ⊕ 𝐶 ) ) ↔ ( ( 𝐴 + 𝐵 ) ⊕ 𝐶 ) = ( 𝐴 ⊕ ( 𝐵 ⊕ 𝐶 ) ) ) )
22 12 16 21 rspc3v ⊢ ( ( 𝐶 ∈ 𝑌 ∧ 𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ) → ( ∀ 𝑥 ∈ 𝑌 ∀ 𝑦 ∈ 𝑋 ∀ 𝑧 ∈ 𝑋 ( ( 𝑦 + 𝑧 ) ⊕ 𝑥 ) = ( 𝑦 ⊕ ( 𝑧 ⊕ 𝑥 ) ) → ( ( 𝐴 + 𝐵 ) ⊕ 𝐶 ) = ( 𝐴 ⊕ ( 𝐵 ⊕ 𝐶 ) ) ) )
23 8 22 syl5 ⊢ ( ( 𝐶 ∈ 𝑌 ∧ 𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ) → ( ⊕ ∈ ( 𝐺 GrpAct 𝑌 ) → ( ( 𝐴 + 𝐵 ) ⊕ 𝐶 ) = ( 𝐴 ⊕ ( 𝐵 ⊕ 𝐶 ) ) ) )
24 23 3coml ⊢ ( ( 𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑌 ) → ( ⊕ ∈ ( 𝐺 GrpAct 𝑌 ) → ( ( 𝐴 + 𝐵 ) ⊕ 𝐶 ) = ( 𝐴 ⊕ ( 𝐵 ⊕ 𝐶 ) ) ) )
25 24 impcom ⊢ ( ( ⊕ ∈ ( 𝐺 GrpAct 𝑌 ) ∧ ( 𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑌 ) ) → ( ( 𝐴 + 𝐵 ) ⊕ 𝐶 ) = ( 𝐴 ⊕ ( 𝐵 ⊕ 𝐶 ) ) )