This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
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 𝑌 ) ∧ ( 𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑌 ) ) → ( ( 𝐴 + 𝐵 ) ⊕ 𝐶 ) = ( 𝐴 ⊕ ( 𝐵 ⊕ 𝐶 ) ) ) |
| 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 𝑌 ) ∧ ( 𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑌 ) ) → ( ( 𝐴 + 𝐵 ) ⊕ 𝐶 ) = ( 𝐴 ⊕ ( 𝐵 ⊕ 𝐶 ) ) ) |