mirror of
https://github.com/Smaug123/agdaproofs
synced 2025-10-06 04:18:40 +00:00
29 lines
953 B
Agda
29 lines
953 B
Agda
{-# OPTIONS --safe --warning=error --without-K #-}
|
|
|
|
open import Groups.Abelian.Definition
|
|
open import Groups.Definition
|
|
open import Setoids.Setoids
|
|
open import Sets.EquivalenceRelations
|
|
open import Lists.Lists
|
|
|
|
|
|
module Groups.Polynomials.Group {a b : _} {A : Set a} {S : Setoid {a} {b} A} {_+_ : A → A → A} (G : Group S _+_) where
|
|
|
|
open import Groups.Polynomials.Definition G
|
|
open import Groups.Polynomials.Addition G public
|
|
open Setoid S
|
|
open Equivalence eq
|
|
|
|
polyGroup : Group naivePolySetoid _+P_
|
|
Group.+WellDefined polyGroup = +PwellDefined
|
|
Group.0G polyGroup = []
|
|
Group.inverse polyGroup = inverse'
|
|
Group.+Associative polyGroup {a} {b} {c} = assoc {a} {b} {c}
|
|
Group.identRight polyGroup = PidentRight
|
|
Group.identLeft polyGroup = PidentLeft
|
|
Group.invLeft polyGroup {a} = invLeft' {a}
|
|
Group.invRight polyGroup {a} = invRight' {a}
|
|
|
|
abelian : AbelianGroup G → AbelianGroup polyGroup
|
|
AbelianGroup.commutative (abelian ab) {x} {y} = comm ab {x} {y}
|