mirror of
https://github.com/Smaug123/agdaproofs
synced 2025-10-18 17:48:40 +00:00
Z is a Euclidean domain (#86)
This commit is contained in:
37
Groups/Subgroups/Examples.agda
Normal file
37
Groups/Subgroups/Examples.agda
Normal file
@@ -0,0 +1,37 @@
|
||||
{-# OPTIONS --safe --warning=error --without-K #-}
|
||||
|
||||
open import LogicalFormulae
|
||||
open import Setoids.Setoids
|
||||
open import Sets.EquivalenceRelations
|
||||
open import Functions
|
||||
open import Agda.Primitive using (Level; lzero; lsuc; _⊔_)
|
||||
open import Numbers.Naturals.Naturals
|
||||
open import Sets.FinSet
|
||||
open import Groups.Definition
|
||||
|
||||
module Groups.Subgroups.Examples {a b : _} {A : Set a} {S : Setoid {a} {b} A} {_+_ : A → A → A} (G : Group S _+_) where
|
||||
|
||||
open import Groups.Subgroups.Definition G
|
||||
open import Groups.Lemmas G
|
||||
|
||||
open Group G
|
||||
open Setoid S
|
||||
open Equivalence eq
|
||||
|
||||
trivialSubgroupPred : A → Set b
|
||||
trivialSubgroupPred a = (a ∼ 0G)
|
||||
|
||||
trivialSubgroup : Subgroup trivialSubgroupPred
|
||||
Subgroup.isSubset trivialSubgroup x=y x=0 = transitive (symmetric x=y) x=0
|
||||
Subgroup.closedUnderPlus trivialSubgroup x=0 y=0 = transitive (+WellDefined x=0 y=0) identLeft
|
||||
Subgroup.containsIdentity trivialSubgroup = reflexive
|
||||
Subgroup.closedUnderInverse trivialSubgroup x=0 = transitive (inverseWellDefined x=0) invIdent
|
||||
|
||||
improperSubgroupPred : A → Set
|
||||
improperSubgroupPred a = True
|
||||
|
||||
improperSubgroup : Subgroup improperSubgroupPred
|
||||
Subgroup.isSubset improperSubgroup _ _ = record {}
|
||||
Subgroup.closedUnderPlus improperSubgroup _ _ = record {}
|
||||
Subgroup.containsIdentity improperSubgroup = record {}
|
||||
Subgroup.closedUnderInverse improperSubgroup _ = record {}
|
Reference in New Issue
Block a user