Skip to content

Commit 69be655

Browse files
committed
Factor out Normal, show abelian implies subgroup is normal
1 parent 969f670 commit 69be655

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

src/Algebra/NormalSubgroup.agda

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,26 @@ open import Algebra.Bundles using (Group)
1010

1111
module Algebra.NormalSubgroup {c ℓ} (G : Group c ℓ) where
1212

13+
open import Algebra.Definitions
1314
open import Algebra.Construct.Sub.Group G using (Subgroup)
14-
open import Data.Product.Base using (∃-syntax)
15+
open import Data.Product.Base using (∃-syntax; _,_)
1516
open import Level using (suc; _⊔_)
1617

1718
private
1819
module G = Group G
1920

21+
-- every element of the subgroup commutes in G
22+
Normal : {c′ ℓ′} Subgroup c′ ℓ′ Set (c ⊔ ℓ ⊔ c′)
23+
Normal subgroup = n g ∃[ n′ ] g G.∙ ι n G.≈ ι n′ G.∙ g
24+
where open Subgroup subgroup
25+
2026
record NormalSubgroup c′ ℓ′ : Set (c ⊔ ℓ ⊔ suc (c′ ⊔ ℓ′)) where
2127
field
2228
subgroup : Subgroup c′ ℓ′
29+
normal : Normal subgroup
2330

2431
open Subgroup subgroup public
2532

26-
field
27-
-- every element of N commutes in G
28-
normal : n g ∃[ n′ ] g G.∙ ι n G.≈ ι n′ G.∙ g
33+
abelian⇒subgroup-normal : {c′ ℓ′} Commutative G._≈_ G._∙_ (subgroup : Subgroup c′ ℓ′) Normal subgroup
34+
abelian⇒subgroup-normal ∙-comm subgroup n g = n , ∙-comm g (ι n)
35+
where open Subgroup subgroup

0 commit comments

Comments
 (0)