Skip to content

Commit bc146da

Browse files
committed
comment: the design of Ideal
1 parent 882c56c commit bc146da

File tree

2 files changed

+18
-3
lines changed

2 files changed

+18
-3
lines changed

src/Algebra/Construct/Sub/Ring/Ideal.agda

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,19 @@
22
-- The Agda standard library
33
--
44
-- Ideals of a ring
5+
--
6+
-- Based on Nathan van Doorn (Taneb)'s original PR
7+
-- https://github.com/agda/agda-stdlib/pull/2855
58
------------------------------------------------------------------------
69

710
{-# OPTIONS --safe --cubical-compatible #-}
811

912
open import Algebra.Bundles using (Ring)
1013

14+
-- As with `Algebra.Construct.Sub.Group.Normal`, this module
15+
-- relocates Taneb's original `Algebra.Ideal`
16+
-- to a level one *below* that of `Algebra.Construct.Sub.Ring`.
17+
1118
module Algebra.Construct.Sub.Ring.Ideal {c ℓ} (R : Ring c ℓ) where
1219

1320
open import Algebra.Module.Construct.Sub.Bimodule using (Subbimodule)
@@ -16,10 +23,17 @@ open import Level using (suc; _⊔_)
1623

1724
------------------------------------------------------------------------
1825
-- Definition
19-
-- a (two sided) ideal is exactly a subbimodule of R considered as a bimodule over itself
26+
--
27+
-- A (two sided) ideal is exactly a sub-bimodule of R, considered as
28+
-- a bimodule (the `TensorUnit` for that category) over itself.
2029

2130
record Ideal c′ ℓ′ : Set (c ⊔ ℓ ⊔ suc (c′ ⊔ ℓ′)) where
2231
field
2332
subbimodule : Subbimodule {R = R} bimodule c′ ℓ′
2433

34+
-- The definition of `Subbimodule` now exports the `normalSubgroup`
35+
-- and `abelianGroup` definitions, so that a `Ring` modulo an `Ideal`
36+
-- already has direct access to the underlying quotient `(Abelian)Group`
37+
-- structure on the additive group of the ring.
38+
2539
open Subbimodule subbimodule public

src/Algebra/Module/Construct/Sub/Bimodule.agda

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@
88
-- but uses the `Algebra.Construct.Sub.AbelianGroup` module
99
-- to plumb in that any sub-bimodule of a `Bimodule` defines
1010
-- a sub-AbelianGroup, hence a `NormalSubgroup`, so that when
11-
-- an ideal in a `Ring` is defined as a suitable sub-bimodule,
11+
-- an `Ideal` in a `Ring` is defined as a suitable sub-bimodule,
12+
-- as in https://github.com/agda/agda-stdlib/pull/2855
1213
-- the quotient structure of the additive subgroup is immediate,
13-
-- on which the quotient `Ring` structure may then be defined.
14+
-- on which the quotient `Ring` structure may then be based.
1415
------------------------------------------------------------------------
1516

1617
{-# OPTIONS --cubical-compatible --safe #-}

0 commit comments

Comments
 (0)