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 𝑌 ) ∧ ( 𝐴𝑋𝐵𝑋𝐶𝑌 ) ) → ( ( 𝐴 + 𝐵 ) 𝐶 ) = ( 𝐴 ( 𝐵 𝐶 ) ) )