Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
249 commits
Select commit Hold shift + click to select a range
54da061
Reorganize signed arithmetic on rational numbers
lowasser Oct 10, 2025
124c9f6
make pre-commit
lowasser Oct 10, 2025
7603bbe
Merge branch 'master' into shake-out-signed-rational
lowasser Oct 11, 2025
80ed53f
Merge branch 'master' into shake-out-signed-rational
lowasser Oct 12, 2025
9dc460a
Update
lowasser Oct 12, 2025
fac3bc7
Merge remote-tracking branch 'origin/shake-out-signed-rational' into …
lowasser Oct 12, 2025
0f28ea3
Merge branch 'master' into shake-out-signed-rational
lowasser Oct 12, 2025
e7c6423
Progress
lowasser Oct 14, 2025
79e3441
Merge branch 'master' into shake-out-signed-rational
lowasser Oct 14, 2025
9963c47
Updates
lowasser Oct 14, 2025
617ae3a
Merge remote-tracking branch 'origin/shake-out-signed-rational' into …
lowasser Oct 14, 2025
41e9741
Merge branch 'master' into shake-out-signed-rational
lowasser Oct 14, 2025
d9d056a
Merge branch 'shake-out-signed-rational' into powers-q
lowasser Oct 14, 2025
817f878
More properties
lowasser Oct 14, 2025
984d8d4
Back out integer powers
lowasser Oct 14, 2025
a69f766
Fixes
lowasser Oct 15, 2025
a3a1866
Merge branch 'master' into shake-out-signed-rational
lowasser Oct 15, 2025
ea3fa12
Fix merge
lowasser Oct 15, 2025
5b44912
Merge branch 'shake-out-signed-rational' into powers-q
lowasser Oct 15, 2025
c7176d6
make pre-commit
lowasser Oct 15, 2025
e8b468a
Merge branch 'master' into shake-out-signed-rational
lowasser Oct 15, 2025
df308e2
Fix merge
lowasser Oct 15, 2025
607eba5
Apply suggestions from code review
lowasser Oct 17, 2025
daa9fc0
Respond to review comments
lowasser Oct 17, 2025
a172df5
Merge branch 'master' into shake-out-signed-rational
lowasser Oct 17, 2025
fbfc0e0
Merge branch 'shake-out-signed-rational' into powers-q
lowasser Oct 17, 2025
e3af1cf
Merge branch 'shake-out-signed-rational' into powers-q
lowasser Oct 17, 2025
0905e0f
Progress
lowasser Oct 17, 2025
0651841
Clarify concept disambiguation
lowasser Oct 17, 2025
d3ffdcf
Merge branch 'powers-q' into powers-all-q
lowasser Oct 17, 2025
e0a24b8
Progress
lowasser Oct 17, 2025
c5b3be8
Further clarify doc
lowasser Oct 17, 2025
139c496
Merge branch 'powers-q' into powers-all-q
lowasser Oct 17, 2025
a8c35cd
Progress
lowasser Oct 17, 2025
cf5019c
Merge branch 'master' into powers-q
lowasser Oct 17, 2025
3793aca
Merge branch 'powers-q' into powers-all-q
lowasser Oct 17, 2025
906c3fb
Progress
lowasser Oct 17, 2025
0bf288f
Merge branch 'master' into powers-all-q
lowasser Oct 17, 2025
92b42a5
Correct superscripts
lowasser Oct 17, 2025
978b504
Progress
lowasser Oct 17, 2025
930459d
Merge branch 'powers-all-q' into geo-seq-ring
lowasser Oct 17, 2025
e332e19
Sums of geometric series for rational numbers
lowasser Oct 17, 2025
c33f1fb
Progress
lowasser Oct 20, 2025
0c8244b
Merge branch 'master' into geo-seq-ring
lowasser Nov 5, 2025
3c95dda
Fix build
lowasser Nov 5, 2025
02238ca
Fix link
lowasser Nov 5, 2025
178803c
Merge branch 'master' into geo-seq-real
lowasser Nov 6, 2025
764f62e
If |q|<1 , q^n approaches 0
lowasser Nov 6, 2025
e80b404
Merge branch 'master' into geo-seq-ring
lowasser Nov 6, 2025
7d6ca7d
Merge remote-tracking branch 'origin/geo-seq-ring' into geo-seq-ring
lowasser Nov 6, 2025
3b396c3
Merge branch 'geo-seq-ring' into geo-seq-rat
lowasser Nov 6, 2025
3c8f1ad
The sum of geometric series of rational numbers
lowasser Nov 6, 2025
2b7d4a2
Define real powers
lowasser Nov 6, 2025
d2bfcb7
Powers of real numbers
lowasser Nov 7, 2025
3754e35
Merge branch 'master' into power-real
lowasser Nov 7, 2025
a0e010c
Apply suggestions from code review
lowasser Nov 7, 2025
9c28f09
Merge remote-tracking branch 'origin/geo-seq-ring' into geo-seq-ring
lowasser Nov 7, 2025
dc3c1b3
Apply suggestions from code review
lowasser Nov 7, 2025
ad32a6f
Merge remote-tracking branch 'origin/geo-seq-ring' into geo-seq-ring
lowasser Nov 7, 2025
b61e819
Update
lowasser Nov 7, 2025
af95bc8
Merge branch 'master' into geo-seq-ring
lowasser Nov 7, 2025
66ebb46
Fixes
lowasser Nov 7, 2025
6c1ede5
Merge remote-tracking branch 'origin/geo-seq-ring' into geo-seq-ring
lowasser Nov 7, 2025
d91ca39
Merge branch 'geo-seq-ring' into geo-seq-rat
lowasser Nov 7, 2025
dd29175
Merge branch 'master' into geo-seq-rat
lowasser Nov 7, 2025
6969f98
Merge
lowasser Nov 7, 2025
a1a0871
Merge branch 'master' into mul-inv-complex
lowasser Nov 7, 2025
966d80d
Progress
lowasser Nov 7, 2025
0befcc5
Merge branch 'geo-seq-rat' into power-real
lowasser Nov 7, 2025
2882532
Progress
lowasser Nov 7, 2025
380382b
Progress
lowasser Nov 7, 2025
b5a27af
Progress
lowasser Nov 7, 2025
5545c34
Progress
lowasser Nov 7, 2025
007d587
Progress
lowasser Nov 7, 2025
6241f8c
Progress
lowasser Nov 8, 2025
13ddd47
Mark more things abstract opaque
lowasser Nov 8, 2025
04ccb85
Fix indent
lowasser Nov 8, 2025
1d65b0a
Fix title
lowasser Nov 8, 2025
84dec2a
Fix
lowasser Nov 8, 2025
315b668
Apply suggestions from code review
lowasser Nov 8, 2025
ed77ccd
Apply suggestions from code review
lowasser Nov 8, 2025
a6f215d
Merge branch 'cleanup-reals' into power-small-real
lowasser Nov 8, 2025
cbda75f
Geometric series in the reals
lowasser Nov 8, 2025
866db9d
Merge branch 'master' into power-real
lowasser Nov 8, 2025
eac6aa2
Fix link
lowasser Nov 8, 2025
6fd2d52
Correct spelling
lowasser Nov 8, 2025
7d10f9c
Update src/real-numbers/powers-real-numbers.lagda.md
fredrik-bakke Nov 8, 2025
43ad559
Fix
lowasser Nov 8, 2025
1f00414
Merge remote-tracking branch 'origin/power-real' into power-small-real
lowasser Nov 8, 2025
343a4ac
Merge branch 'master' into power-small-real
lowasser Nov 8, 2025
76b2d96
Fix
lowasser Nov 8, 2025
37b06ff
Merge branch 'master' into geo-seq-rat
fredrik-bakke Nov 8, 2025
76bec78
Progress
lowasser Nov 8, 2025
2be3628
Merge branch 'geo-seq-rat' into power-small-real
lowasser Nov 8, 2025
e609a5c
Merge branch 'master' into cleanup-reals
lowasser Nov 8, 2025
e9a1277
Merge branch 'cleanup-reals' into power-small-real
lowasser Nov 8, 2025
423fdcc
Merge branch 'power-small-real' into derivative-v2
lowasser Nov 8, 2025
507c7fa
Progress
lowasser Nov 8, 2025
41992ba
Pull changes
lowasser Nov 8, 2025
80ae32b
Progress
lowasser Nov 8, 2025
b0404c0
Progress
lowasser Nov 8, 2025
8a4a028
Merge branch 'cleanup-reals' into apartness-metric
lowasser Nov 8, 2025
4a86b5d
Merge branch 'power-small-real' into apartness-metric
lowasser Nov 8, 2025
53d3a16
Progress
lowasser Nov 8, 2025
139c5ac
Update src/real-numbers/dedekind-real-numbers.lagda.md
lowasser Nov 8, 2025
d9aeb7f
Apply suggestions from code review
lowasser Nov 8, 2025
defa213
Update src/real-numbers/strict-inequalities-addition-real-numbers.lag…
lowasser Nov 8, 2025
fa31c52
Update src/real-numbers/strict-inequalities-addition-real-numbers.lag…
lowasser Nov 8, 2025
45757e8
Update src/real-numbers/saturation-inequality-nonnegative-real-number…
lowasser Nov 8, 2025
70cef9b
Rename files
lowasser Nov 8, 2025
542ccde
Merge branch 'cleanup-reals' into power-small-real
lowasser Nov 8, 2025
293343c
Merge branch 'power-small-real' into apartness-metric
lowasser Nov 8, 2025
a85cdcb
Fix
lowasser Nov 8, 2025
1d5f0a2
Fix
lowasser Nov 8, 2025
399e3c3
Fix build
lowasser Nov 8, 2025
0d47a8a
Progress
lowasser Nov 8, 2025
89c04b3
Merge branch 'apartness-metric' into cluster-point-metric
lowasser Nov 8, 2025
7c13bf5
Merge branch 'proper-closed-intervals' into cluster-point-metric
lowasser Nov 8, 2025
6a0ce50
Every point in a proper closed interval is an accumulation point
lowasser Nov 9, 2025
3ed6bf1
Sequential accumulation points
lowasser Nov 9, 2025
74b1601
Prove equivalence between sequential and approximation versions
lowasser Nov 9, 2025
2bda7c6
Prove equivalence between sequential and approximation versions
lowasser Nov 9, 2025
719aff3
Fix link
lowasser Nov 9, 2025
8569df8
chore: optimize imports `real-numbers`
fredrik-bakke Nov 9, 2025
f11b6e2
fix
fredrik-bakke Nov 9, 2025
2c0bdbc
chore: optimize imports rational numbers
fredrik-bakke Nov 9, 2025
6f84e68
Merge branch 'master' into cleanup-reals
fredrik-bakke Nov 9, 2025
19429e5
Merge remote-tracking branch 'origin/cleanup-reals' into power-small-…
lowasser Nov 9, 2025
908914f
Fixes
lowasser Nov 9, 2025
39c6414
Merge branch 'master' into power-small-real
lowasser Nov 9, 2025
7542dd2
Fix build
lowasser Nov 9, 2025
d22a00b
Merge branch 'power-small-real' into apartness-metric
lowasser Nov 9, 2025
247204c
Merge branch 'apartness-metric' into cluster-point-metric
lowasser Nov 9, 2025
850d8e0
Merge branch 'cluster-point-metric' into mul-inv-complex
lowasser Nov 9, 2025
fc7be89
Multiplicative inverses of nonzero complex numbers
lowasser Nov 9, 2025
89adb08
Magnitudes multiply
lowasser Nov 10, 2025
1b16862
Merge branch 'master' into power-small-real
lowasser Nov 10, 2025
0bb5730
Update src/commutative-algebra/geometric-sequences-commutative-rings.…
lowasser Nov 10, 2025
62bf2b6
Respond to review comment
lowasser Nov 10, 2025
8367ef1
Merge remote-tracking branch 'origin/power-small-real' into power-sma…
lowasser Nov 10, 2025
855c5bb
Fix arithmetic op names
lowasser Nov 10, 2025
51dbac7
Merge branch 'power-small-real' into apartness-metric
lowasser Nov 10, 2025
9309668
Apply suggestions from code review
lowasser Nov 10, 2025
d1447a8
Respond to comments
lowasser Nov 10, 2025
fb3dec5
plural `preserves-limits`
fredrik-bakke Nov 10, 2025
b016840
Vector spaces
lowasser Nov 11, 2025
b314743
Merge branch 'power-small-real' into apartness-metric
lowasser Nov 11, 2025
ace1e87
Merge branch 'master' into apartness-metric
lowasser Nov 11, 2025
6b6689a
Correct merge
lowasser Nov 11, 2025
1d02a41
Progress
lowasser Nov 11, 2025
cac562e
Fix merge
lowasser Nov 11, 2025
453322e
Revert accident
lowasser Nov 11, 2025
23e4eab
Fix lefts and rights
lowasser Nov 11, 2025
16e5f5c
Progress
lowasser Nov 11, 2025
edc0b39
Merge branch 'mul-inv-complex' into vector-spaces
lowasser Nov 11, 2025
3a1716c
Merge branch 'apartness-metric' into cluster-point-metric
lowasser Nov 11, 2025
e1a2523
Merge branch 'cluster-point-metric' into vector-spaces
lowasser Nov 11, 2025
8ac326c
Apply suggestions from code review
lowasser Nov 11, 2025
68dbbeb
Merge branch 'apartness-metric' into cluster-point-metric
lowasser Nov 11, 2025
c9c052d
Merge branch 'cluster-point-metric' into mul-inv-complex
lowasser Nov 11, 2025
98a567d
Fix
lowasser Nov 11, 2025
6875f83
Merge branch 'master' into apartness-metric
fredrik-bakke Nov 11, 2025
104ce21
Merge branch 'apartness-metric' into cluster-point-metric
lowasser Nov 12, 2025
b8d27e2
Merge branch 'master' into cluster-point-metric
lowasser Nov 12, 2025
cea1591
Merge branch 'cluster-point-metric' into vector-spaces
lowasser Nov 12, 2025
b05a85e
Real seminormed, normed, and Banach spaces
lowasser Nov 12, 2025
4ac0fbf
Merge branch 'cluster-point-metric' into mul-inv-complex
lowasser Nov 12, 2025
53e7aeb
make pre-commit
lowasser Nov 12, 2025
e32bd41
make pre-commit
lowasser Nov 12, 2025
4494428
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 12, 2025
7300f31
Merge branch 'master' into cluster-point-metric
lowasser Nov 13, 2025
c90223c
Merge branch 'master' into cluster-point-metric
lowasser Nov 13, 2025
a1a6a8c
Update src/metric-spaces/cauchy-sequences-metric-spaces.lagda.md
lowasser Nov 13, 2025
1bcb06a
Update src/metric-spaces/accumulation-points-subsets-located-metric-s…
lowasser Nov 13, 2025
a9bacdd
Update src/real-numbers/binary-maximum-real-numbers.lagda.md
lowasser Nov 13, 2025
f5e8fba
Progress
lowasser Nov 13, 2025
eb7688e
Merge remote-tracking branch 'origin/cluster-point-metric' into clust…
lowasser Nov 13, 2025
510ac59
Merge branch 'master' into cluster-point-metric
lowasser Nov 13, 2025
08bb7e3
Fixes
lowasser Nov 13, 2025
db68b9d
Simplify
lowasser Nov 13, 2025
ec3033d
Merge branch 'cluster-point-metric' into mul-inv-complex
lowasser Nov 13, 2025
9a1d3a2
Merge branch 'cluster-point-metric' into vector-spaces
lowasser Nov 13, 2025
0ec089c
Merge branch 'mul-inv-complex' into vector-spaces
lowasser Nov 13, 2025
04e6eb2
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 13, 2025
5ac1666
Fix naming
lowasser Nov 14, 2025
4a1d1c9
Fix braces
lowasser Nov 15, 2025
a15f079
Merge branch 'mul-inv-complex' into vector-spaces
lowasser Nov 15, 2025
b0b1d43
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 15, 2025
ecfd72d
Update src/metric-spaces/accumulation-points-subsets-located-metric-s…
lowasser Nov 15, 2025
bf8f5c6
Merge remote-tracking branch 'origin/cluster-point-metric'
lowasser Nov 15, 2025
ff1dcee
Merge branch 'master' into mul-inv-complex
lowasser Nov 15, 2025
f0e48e4
Merge branch 'mul-inv-complex' into vector-spaces
lowasser Nov 15, 2025
1c59242
Fix imports
lowasser Nov 15, 2025
f09fd5f
The reals are a vector space over themselves
lowasser Nov 15, 2025
cb0f9e3
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 15, 2025
9941e80
The real normed vector space of the reals
lowasser Nov 15, 2025
260076b
The reals are themselves a real Banach space
lowasser Nov 15, 2025
5ef21f2
Fix title in vector-spaces
lowasser Nov 15, 2025
f7527cf
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 15, 2025
de71c71
Add more cross links
lowasser Nov 16, 2025
d593401
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 16, 2025
05bcb36
Add more cross links
lowasser Nov 16, 2025
480ef20
Add more cross links
lowasser Nov 16, 2025
ef5fb9d
Update src/complex-numbers/apartness-complex-numbers.lagda.md
lowasser Nov 16, 2025
f734c77
Update src/complex-numbers/magnitude-complex-numbers.lagda.md
lowasser Nov 16, 2025
b069ea8
Update src/complex-numbers/magnitude-complex-numbers.lagda.md
lowasser Nov 16, 2025
e090719
Update src/complex-numbers/magnitude-complex-numbers.lagda.md
lowasser Nov 16, 2025
6783b3d
Apply suggestions from code review
lowasser Nov 16, 2025
c02c593
Respond to review comments
lowasser Nov 16, 2025
7cb97fd
Merge branch 'master' into mul-inv-complex
lowasser Nov 16, 2025
b1f22ea
Merge branch 'mul-inv-complex' into vector-spaces
lowasser Nov 16, 2025
d7fa3aa
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 16, 2025
a7672ce
Use Heyting fields instead of local commutative rings to define vecto…
lowasser Nov 17, 2025
15d5d50
Add external link
lowasser Nov 17, 2025
ad8c577
Side note: apartness on R is tight
lowasser Nov 17, 2025
76a89f3
Make things abstract
lowasser Nov 17, 2025
82b9336
More docs
lowasser Nov 17, 2025
17d1b15
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 17, 2025
31f56e1
Fix naming
lowasser Nov 17, 2025
48ffd61
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 17, 2025
06aaec6
Simplifications and parentheses
lowasser Nov 17, 2025
124a228
Merge branch 'master' into vector-spaces
lowasser Nov 17, 2025
4c81a52
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 17, 2025
dc56ad4
make pre-commit
lowasser Nov 17, 2025
e5cc414
Merge branch 'master' into vector-spaces
lowasser Nov 17, 2025
afb9bfd
Update src/commutative-algebra/heyting-fields.lagda.md
lowasser Nov 17, 2025
98f0b57
Describe Heyting vs discrete fields
lowasser Nov 17, 2025
06a594a
Merge remote-tracking branch 'origin/vector-spaces' into vector-spaces
lowasser Nov 17, 2025
454ef06
Update src/foundation/large-apartness-relations.lagda.md
lowasser Nov 17, 2025
1a61315
Update src/commutative-algebra/local-commutative-rings.lagda.md
lowasser Nov 18, 2025
cbf5a30
Respond to review comments
lowasser Nov 18, 2025
41d90f5
Merge remote-tracking branch 'origin/vector-spaces' into vector-spaces
lowasser Nov 18, 2025
5ad66fa
make pre-commit
lowasser Nov 18, 2025
67a05af
Merge branch 'master' into vector-spaces
lowasser Nov 20, 2025
81d01f5
Update src/real-numbers/field-of-real-numbers.lagda.md
lowasser Nov 20, 2025
7c39b3b
Merge remote-tracking branch 'origin/vector-spaces' into vector-spaces
lowasser Nov 20, 2025
29100f7
Nonequality of 0 and 1 as its own lemma
lowasser Nov 20, 2025
3a31ee0
make pre-commit
lowasser Nov 21, 2025
3af6e3d
Merge branch 'master' into vector-spaces
lowasser Nov 21, 2025
40ccd88
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser Nov 21, 2025
53d66bb
Apply suggestions from code review
lowasser Nov 24, 2025
7df6f11
Merge branch 'master' into normed-vector-spaces
lowasser Nov 24, 2025
6411a20
Update src/linear-algebra/seminormed-real-vector-spaces.lagda.md
lowasser Nov 25, 2025
eb7b886
Respond to review comments
lowasser Nov 25, 2025
75c6ae9
Merge branch 'master' into normed-vector-spaces
lowasser Nov 25, 2025
4de6844
Merge remote-tracking branch 'origin/normed-vector-spaces' into norme…
lowasser Nov 25, 2025
1312075
Simplification, fix typo
lowasser Nov 25, 2025
0970cfc
Add typo to dictionary
lowasser Nov 25, 2025
556d0e3
Respond to review comments
lowasser Nov 26, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions config/codespell-dictionary.txt
Original file line number Diff line number Diff line change
Expand Up @@ -79,3 +79,4 @@ morphsims->morphisms
outout->output
ringr->ring
ringrs->rings
semiorm->seminorm
3 changes: 3 additions & 0 deletions src/linear-algebra.lagda.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,16 @@ open import linear-algebra.linear-spans-left-modules-rings public
open import linear-algebra.matrices public
open import linear-algebra.matrices-on-rings public
open import linear-algebra.multiplication-matrices public
open import linear-algebra.normed-real-vector-spaces public
open import linear-algebra.preimages-of-left-module-structures-along-homomorphisms-of-rings public
open import linear-algebra.rational-modules public
open import linear-algebra.real-banach-spaces public
open import linear-algebra.real-vector-spaces public
open import linear-algebra.right-modules-rings public
open import linear-algebra.scalar-multiplication-matrices public
open import linear-algebra.scalar-multiplication-tuples public
open import linear-algebra.scalar-multiplication-tuples-on-rings public
open import linear-algebra.seminormed-real-vector-spaces public
open import linear-algebra.subsets-left-modules-rings public
open import linear-algebra.transposition-matrices public
open import linear-algebra.tuples-on-commutative-monoids public
Expand Down
253 changes: 253 additions & 0 deletions src/linear-algebra/normed-real-vector-spaces.lagda.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,253 @@
# Normed real vector spaces

```agda
module linear-algebra.normed-real-vector-spaces where
```

<details><summary>Imports</summary>

```agda
open import foundation.dependent-pair-types
open import foundation.identity-types
open import foundation.logical-equivalences
open import foundation.propositions
open import foundation.sets
open import foundation.subtypes
open import foundation.transport-along-identifications
open import foundation.universe-levels

open import group-theory.abelian-groups

open import linear-algebra.real-vector-spaces
open import linear-algebra.seminormed-real-vector-spaces

open import metric-spaces.equality-of-metric-spaces
open import metric-spaces.located-metric-spaces
open import metric-spaces.metric-spaces
open import metric-spaces.metrics

open import real-numbers.absolute-value-real-numbers
open import real-numbers.dedekind-real-numbers
open import real-numbers.distance-real-numbers
open import real-numbers.metric-space-of-real-numbers
open import real-numbers.nonnegative-real-numbers
open import real-numbers.raising-universe-levels-real-numbers
open import real-numbers.rational-real-numbers
open import real-numbers.saturation-inequality-nonnegative-real-numbers
open import real-numbers.similarity-real-numbers
```

</details>

## Idea

A
{{#concept "norm" WDID=Q956437 WD="norm" Disambiguation="on a real vector space" Agda=norm-ℝ-Vector-Space}}
on a [real vector space](linear-algebra.real-vector-spaces.md) `V` is a
[seminorm](linear-algebra.seminormed-real-vector-spaces.md) `p` on `V` that is
**extensional**: if `p(v) = 0`, then `v` is the zero vector.

A real vector space equipped with such a norm is called a
{{#concept "normed vector space" Disambiguation="normed real vector space" WDID=Q726210 WD="normed vector space" Agda=Normed-ℝ-Vector-Space}}.

A norm on a real vector space induces a
[located](metric-spaces.located-metric-spaces.md)
[metric space](metric-spaces.metric-spaces.md) on the vector space, defined by
the neighborhood relation that `v` and `w` are in an `ε`-neighborhood of each
other if `p(v - w) ≤ ε`.

## Definition

```agda
module _
{l1 l2 : Level} (V : ℝ-Vector-Space l1 l2) (p : seminorm-ℝ-Vector-Space V)
where

is-norm-prop-seminorm-ℝ-Vector-Space : Prop (lsuc l1 ⊔ l2)
is-norm-prop-seminorm-ℝ-Vector-Space =
Π-Prop
( type-ℝ-Vector-Space V)
( λ v →
hom-Prop
( Id-Prop (ℝ-Set l1) (pr1 p v) (raise-ℝ l1 zero-ℝ))
( is-zero-prop-ℝ-Vector-Space V v))

is-norm-seminorm-ℝ-Vector-Space : UU (lsuc l1 ⊔ l2)
is-norm-seminorm-ℝ-Vector-Space =
type-Prop is-norm-prop-seminorm-ℝ-Vector-Space

norm-ℝ-Vector-Space : {l1 l2 : Level} → ℝ-Vector-Space l1 l2 → UU (lsuc l1 ⊔ l2)
norm-ℝ-Vector-Space V = type-subtype (is-norm-prop-seminorm-ℝ-Vector-Space V)

Normed-ℝ-Vector-Space : (l1 l2 : Level) → UU (lsuc l1 ⊔ lsuc l2)
Normed-ℝ-Vector-Space l1 l2 = Σ (ℝ-Vector-Space l1 l2) norm-ℝ-Vector-Space
```

## Properties

```agda
module _
{l1 l2 : Level} (V : Normed-ℝ-Vector-Space l1 l2)
where

vector-space-Normed-ℝ-Vector-Space : ℝ-Vector-Space l1 l2
vector-space-Normed-ℝ-Vector-Space = pr1 V

norm-Normed-ℝ-Vector-Space :
norm-ℝ-Vector-Space vector-space-Normed-ℝ-Vector-Space
norm-Normed-ℝ-Vector-Space = pr2 V

seminorm-Normed-ℝ-Vector-Space :
seminorm-ℝ-Vector-Space vector-space-Normed-ℝ-Vector-Space
seminorm-Normed-ℝ-Vector-Space = pr1 norm-Normed-ℝ-Vector-Space

seminormed-vector-space-Normed-ℝ-Vector-Space :
Seminormed-ℝ-Vector-Space l1 l2
seminormed-vector-space-Normed-ℝ-Vector-Space =
( vector-space-Normed-ℝ-Vector-Space , seminorm-Normed-ℝ-Vector-Space)

set-Normed-ℝ-Vector-Space : Set l2
set-Normed-ℝ-Vector-Space =
set-ℝ-Vector-Space vector-space-Normed-ℝ-Vector-Space

type-Normed-ℝ-Vector-Space : UU l2
type-Normed-ℝ-Vector-Space =
type-ℝ-Vector-Space vector-space-Normed-ℝ-Vector-Space

add-Normed-ℝ-Vector-Space :
type-Normed-ℝ-Vector-Space → type-Normed-ℝ-Vector-Space →
type-Normed-ℝ-Vector-Space
add-Normed-ℝ-Vector-Space =
add-ℝ-Vector-Space vector-space-Normed-ℝ-Vector-Space

diff-Normed-ℝ-Vector-Space :
type-Normed-ℝ-Vector-Space → type-Normed-ℝ-Vector-Space →
type-Normed-ℝ-Vector-Space
diff-Normed-ℝ-Vector-Space =
diff-ℝ-Vector-Space vector-space-Normed-ℝ-Vector-Space

zero-Normed-ℝ-Vector-Space : type-Normed-ℝ-Vector-Space
zero-Normed-ℝ-Vector-Space =
zero-ℝ-Vector-Space vector-space-Normed-ℝ-Vector-Space

map-norm-Normed-ℝ-Vector-Space : type-Normed-ℝ-Vector-Space → ℝ l1
map-norm-Normed-ℝ-Vector-Space = pr1 (pr1 norm-Normed-ℝ-Vector-Space)

nonnegative-norm-Normed-ℝ-Vector-Space : type-Normed-ℝ-Vector-Space → ℝ⁰⁺ l1
nonnegative-norm-Normed-ℝ-Vector-Space =
nonnegative-seminorm-Seminormed-ℝ-Vector-Space
( seminormed-vector-space-Normed-ℝ-Vector-Space)

dist-Normed-ℝ-Vector-Space :
type-Normed-ℝ-Vector-Space → type-Normed-ℝ-Vector-Space → ℝ l1
dist-Normed-ℝ-Vector-Space =
dist-Seminormed-ℝ-Vector-Space seminormed-vector-space-Normed-ℝ-Vector-Space

nonnegative-dist-Normed-ℝ-Vector-Space :
type-Normed-ℝ-Vector-Space → type-Normed-ℝ-Vector-Space → ℝ⁰⁺ l1
nonnegative-dist-Normed-ℝ-Vector-Space =
nonnegative-dist-Seminormed-ℝ-Vector-Space
( seminormed-vector-space-Normed-ℝ-Vector-Space)

is-extensional-norm-Normed-ℝ-Metric-Space :
(v : type-Normed-ℝ-Vector-Space) →
map-norm-Normed-ℝ-Vector-Space v = raise-ℝ l1 zero-ℝ →
v = zero-Normed-ℝ-Vector-Space
is-extensional-norm-Normed-ℝ-Metric-Space = pr2 norm-Normed-ℝ-Vector-Space

is-extensional-dist-Normed-ℝ-Metric-Space :
(v w : type-Normed-ℝ-Vector-Space) →
dist-Normed-ℝ-Vector-Space v w = raise-ℝ l1 zero-ℝ →
v = w
is-extensional-dist-Normed-ℝ-Metric-Space v w |v-w|=0 =
eq-is-zero-right-subtraction-Ab
( ab-ℝ-Vector-Space vector-space-Normed-ℝ-Vector-Space)
( is-extensional-norm-Normed-ℝ-Metric-Space
( diff-Normed-ℝ-Vector-Space v w)
( |v-w|=0))

commutative-dist-Normed-ℝ-Vector-Space :
(v w : type-Normed-ℝ-Vector-Space) →
dist-Normed-ℝ-Vector-Space v w = dist-Normed-ℝ-Vector-Space w v
commutative-dist-Normed-ℝ-Vector-Space =
commutative-dist-Seminormed-ℝ-Vector-Space
( seminormed-vector-space-Normed-ℝ-Vector-Space)
```

### The metric space of a normed vector space

```agda
module _
{l1 l2 : Level} (V : Normed-ℝ-Vector-Space l1 l2)
where

refl-norm-Normed-ℝ-Vector-Space :
(v : type-Normed-ℝ-Vector-Space V) →
sim-ℝ zero-ℝ (dist-Normed-ℝ-Vector-Space V v v)
refl-norm-Normed-ℝ-Vector-Space v =
inv-tr
( sim-ℝ zero-ℝ)
( is-zero-diagonal-dist-Seminormed-ℝ-Vector-Space
( seminormed-vector-space-Normed-ℝ-Vector-Space V)
( v))
( sim-raise-ℝ l1 zero-ℝ)

metric-Normed-ℝ-Vector-Space : Metric l1 (set-Normed-ℝ-Vector-Space V)
metric-Normed-ℝ-Vector-Space =
( nonnegative-dist-Normed-ℝ-Vector-Space V ,
refl-norm-Normed-ℝ-Vector-Space ,
( λ v w → eq-ℝ⁰⁺ _ _ (commutative-dist-Normed-ℝ-Vector-Space V v w)) ,
triangular-dist-Seminormed-ℝ-Vector-Space
( seminormed-vector-space-Normed-ℝ-Vector-Space V) ,
( λ v w 0~dvw →
is-extensional-dist-Normed-ℝ-Metric-Space V v w
( eq-sim-ℝ
( transitive-sim-ℝ _ _ _
( sim-raise-ℝ l1 zero-ℝ)
( symmetric-sim-ℝ 0~dvw)))))

metric-space-Normed-ℝ-Vector-Space : Metric-Space l2 l1
metric-space-Normed-ℝ-Vector-Space =
metric-space-Metric
( set-Normed-ℝ-Vector-Space V)
( metric-Normed-ℝ-Vector-Space)

located-metric-space-Normed-ℝ-Vector-Space : Located-Metric-Space l2 l1
located-metric-space-Normed-ℝ-Vector-Space =
located-metric-space-Metric
( set-Normed-ℝ-Vector-Space V)
( metric-Normed-ℝ-Vector-Space)
```

## Properties

### The real numbers are a normed vector space over themselves with norm `x ↦ |x|`

```agda
normed-real-vector-space-ℝ :
(l : Level) → Normed-ℝ-Vector-Space l (lsuc l)
normed-real-vector-space-ℝ l =
( real-vector-space-ℝ l ,
( abs-ℝ , triangle-inequality-abs-ℝ , abs-mul-ℝ) ,
eq-raise-zero-eq-raise-zero-abs-ℝ)

abstract
eq-metric-space-normed-real-vector-space-metric-space-ℝ :
(l : Level) →
metric-space-Normed-ℝ-Vector-Space (normed-real-vector-space-ℝ l) =
metric-space-ℝ l
eq-metric-space-normed-real-vector-space-metric-space-ℝ l =
eq-isometric-eq-Metric-Space _ _
( refl , λ d x y → inv-iff (neighborhood-iff-leq-dist-ℝ d x y))
```

## See also

- [Real Banach spaces](linear-algebra.real-banach-spaces.md), normed real vector
spaces for which the induced metric space is
[complete](metric-spaces.complete-metric-spaces.md)

## External links

- [Normed vector space](https://en.wikipedia.org/wiki/Normed_vector_space) on
Wikipedia
77 changes: 77 additions & 0 deletions src/linear-algebra/real-banach-spaces.lagda.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Real Banach spaces

```agda
{-# OPTIONS --lossy-unification #-}

module linear-algebra.real-banach-spaces where
```

<details><summary>Imports</summary>

```agda
open import foundation.dependent-pair-types
open import foundation.propositions
open import foundation.subtypes
open import foundation.transport-along-identifications
open import foundation.universe-levels

open import linear-algebra.normed-real-vector-spaces

open import metric-spaces.complete-metric-spaces

open import real-numbers.cauchy-completeness-dedekind-real-numbers
```

</details>

## Idea

A
{{#concept "real Banach space" WDID=Q194397 WD="Banach space" Agda=ℝ-Banach-Space}}
is a [normed](linear-algebra.normed-real-vector-spaces.md)
[real vector space](linear-algebra.real-vector-spaces.md) such that the
[metric space](metric-spaces.metric-spaces.md) induced by the norm is
[complete](metric-spaces.complete-metric-spaces.md).

## Definition

```agda
is-banach-prop-Normed-ℝ-Vector-Space :
{l1 l2 : Level} (V : Normed-ℝ-Vector-Space l1 l2) → Prop (l1 ⊔ l2)
is-banach-prop-Normed-ℝ-Vector-Space V =
is-complete-prop-Metric-Space (metric-space-Normed-ℝ-Vector-Space V)

is-banach-Normed-ℝ-Vector-Space :
{l1 l2 : Level} (V : Normed-ℝ-Vector-Space l1 l2) → UU (l1 ⊔ l2)
is-banach-Normed-ℝ-Vector-Space V =
type-Prop (is-banach-prop-Normed-ℝ-Vector-Space V)

ℝ-Banach-Space : (l1 l2 : Level) → UU (lsuc l1 ⊔ lsuc l2)
ℝ-Banach-Space l1 l2 =
type-subtype (is-banach-prop-Normed-ℝ-Vector-Space {l1} {l2})
```

## Properties

### The real numbers are a real Banach space with norm `x ↦ |x|`

```agda
abstract
is-banach-normed-real-vector-space-ℝ :
(l : Level) →
is-banach-Normed-ℝ-Vector-Space (normed-real-vector-space-ℝ l)
is-banach-normed-real-vector-space-ℝ l =
inv-tr
( is-complete-Metric-Space)
( eq-metric-space-normed-real-vector-space-metric-space-ℝ l)
( is-complete-metric-space-ℝ l)

real-banach-space-ℝ : (l : Level) → ℝ-Banach-Space l (lsuc l)
real-banach-space-ℝ l =
( normed-real-vector-space-ℝ l ,
is-banach-normed-real-vector-space-ℝ l)
```

## External links

- [Banach space](https://en.wikipedia.org/wiki/Banach_space) on Wikipedia
Loading