-
Notifications
You must be signed in to change notification settings - Fork 92
Hilbert spaces #1713
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Hilbert spaces #1713
Changes from all commits
Commits
Show all changes
366 commits
Select commit
Hold shift + click to select a range
89c04b3
Merge branch 'apartness-metric' into cluster-point-metric
lowasser 7c13bf5
Merge branch 'proper-closed-intervals' into cluster-point-metric
lowasser 6a0ce50
Every point in a proper closed interval is an accumulation point
lowasser 3ed6bf1
Sequential accumulation points
lowasser 74b1601
Prove equivalence between sequential and approximation versions
lowasser 2bda7c6
Prove equivalence between sequential and approximation versions
lowasser 719aff3
Fix link
lowasser 8569df8
chore: optimize imports `real-numbers`
fredrik-bakke f11b6e2
fix
fredrik-bakke 2c0bdbc
chore: optimize imports rational numbers
fredrik-bakke 6f84e68
Merge branch 'master' into cleanup-reals
fredrik-bakke 19429e5
Merge remote-tracking branch 'origin/cleanup-reals' into power-small-…
lowasser 908914f
Fixes
lowasser 39c6414
Merge branch 'master' into power-small-real
lowasser 7542dd2
Fix build
lowasser d22a00b
Merge branch 'power-small-real' into apartness-metric
lowasser 247204c
Merge branch 'apartness-metric' into cluster-point-metric
lowasser 850d8e0
Merge branch 'cluster-point-metric' into mul-inv-complex
lowasser fc7be89
Multiplicative inverses of nonzero complex numbers
lowasser 89adb08
Magnitudes multiply
lowasser 1b16862
Merge branch 'master' into power-small-real
lowasser 0bb5730
Update src/commutative-algebra/geometric-sequences-commutative-rings.…
lowasser 62bf2b6
Respond to review comment
lowasser 8367ef1
Merge remote-tracking branch 'origin/power-small-real' into power-sma…
lowasser 855c5bb
Fix arithmetic op names
lowasser 51dbac7
Merge branch 'power-small-real' into apartness-metric
lowasser 9309668
Apply suggestions from code review
lowasser d1447a8
Respond to comments
lowasser fb3dec5
plural `preserves-limits`
fredrik-bakke b016840
Vector spaces
lowasser b314743
Merge branch 'power-small-real' into apartness-metric
lowasser ace1e87
Merge branch 'master' into apartness-metric
lowasser 6b6689a
Correct merge
lowasser 1d02a41
Progress
lowasser cac562e
Fix merge
lowasser 453322e
Revert accident
lowasser 23e4eab
Fix lefts and rights
lowasser 16e5f5c
Progress
lowasser edc0b39
Merge branch 'mul-inv-complex' into vector-spaces
lowasser 3a1716c
Merge branch 'apartness-metric' into cluster-point-metric
lowasser e1a2523
Merge branch 'cluster-point-metric' into vector-spaces
lowasser 8ac326c
Apply suggestions from code review
lowasser 68dbbeb
Merge branch 'apartness-metric' into cluster-point-metric
lowasser c9c052d
Merge branch 'cluster-point-metric' into mul-inv-complex
lowasser 98a567d
Fix
lowasser 6875f83
Merge branch 'master' into apartness-metric
fredrik-bakke 104ce21
Merge branch 'apartness-metric' into cluster-point-metric
lowasser b8d27e2
Merge branch 'master' into cluster-point-metric
lowasser cea1591
Merge branch 'cluster-point-metric' into vector-spaces
lowasser b05a85e
Real seminormed, normed, and Banach spaces
lowasser a2a979f
Pythagorean theorem
lowasser 4c7eb99
make pre-commit
lowasser 5a73e5c
Progress
lowasser efb137f
Progress
lowasser 4ac0fbf
Merge branch 'cluster-point-metric' into mul-inv-complex
lowasser 53e7aeb
make pre-commit
lowasser e32bd41
make pre-commit
lowasser 4494428
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser 6eb58af
Merge branch 'normed-vector-spaces' into inner-product-spaces
lowasser 58b774a
make pre-commit
lowasser 2d01b49
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser 739b808
Progress
lowasser 4315621
Progress
lowasser 7300f31
Merge branch 'master' into cluster-point-metric
lowasser c90223c
Merge branch 'master' into cluster-point-metric
lowasser a1a6a8c
Update src/metric-spaces/cauchy-sequences-metric-spaces.lagda.md
lowasser 1bcb06a
Update src/metric-spaces/accumulation-points-subsets-located-metric-s…
lowasser a9bacdd
Update src/real-numbers/binary-maximum-real-numbers.lagda.md
lowasser f5e8fba
Progress
lowasser eb7688e
Merge remote-tracking branch 'origin/cluster-point-metric' into clust…
lowasser 7cc7c37
Merge branch 'master' into inner-product-spaces
lowasser 510ac59
Merge branch 'master' into cluster-point-metric
lowasser 08bb7e3
Fixes
lowasser db68b9d
Simplify
lowasser ec3033d
Merge branch 'cluster-point-metric' into mul-inv-complex
lowasser 9a1d3a2
Merge branch 'cluster-point-metric' into vector-spaces
lowasser 0ec089c
Merge branch 'mul-inv-complex' into vector-spaces
lowasser 04e6eb2
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser 9a7c410
The Cauchy-Schwarz Inequality
lowasser 9a07a0a
Add to 100 Theorems
lowasser 7982cb7
Merge branch 'normed-vector-spaces' into inner-product-spaces
lowasser b0ba6b9
Merge remote-tracking branch 'origin/inner-product-spaces' into inner…
lowasser ff17bc4
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser b704fa9
Refactor Pythagorean Theorem to its own file
lowasser 5a4ec98
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser 96d99eb
Progress
lowasser 5ac1666
Fix naming
lowasser 5686565
Merge branch 'normed-vector-spaces' into inner-product-spaces
lowasser be3aac8
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser 4fd35aa
Define Hilbert spaces
lowasser 948b32b
Back out triangle inequality
lowasser ee9c28d
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser 111203a
Move bibliography
lowasser 4a2d14a
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser 37f71de
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser 4a1d1c9
Fix braces
lowasser a15f079
Merge branch 'mul-inv-complex' into vector-spaces
lowasser b0b1d43
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser e21b81e
Merge branch 'normed-vector-spaces' into inner-product-spaces
lowasser 12e2425
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser b45b236
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser ecfd72d
Update src/metric-spaces/accumulation-points-subsets-located-metric-s…
lowasser bf8f5c6
Merge remote-tracking branch 'origin/cluster-point-metric'
lowasser ff1dcee
Merge branch 'master' into mul-inv-complex
lowasser f0e48e4
Merge branch 'mul-inv-complex' into vector-spaces
lowasser 2531ff0
Merge branch 'vector-spaces' into inner-product-spaces
lowasser 1c59242
Fix imports
lowasser f09fd5f
The reals are a vector space over themselves
lowasser cb0f9e3
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser 9941e80
The real normed vector space of the reals
lowasser 260076b
The reals are themselves a real Banach space
lowasser 5ef21f2
Fix title in vector-spaces
lowasser f7527cf
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser e92de9c
Merge branch 'normed-vector-spaces' into inner-product-spaces
lowasser faa6ee9
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser cc88868
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser 7475404
make pre-commit
lowasser b7d38d5
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser b2d9bff
make pre-commit
lowasser 688c34b
The reals are an inner product space over themselves under multiplica…
lowasser c8c8e6b
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser 74277ab
make pre-commit
lowasser a02156a
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser 937387f
The reals are a real Hilbert space
lowasser b955c69
make pre-commit
lowasser de71c71
Add more cross links
lowasser d593401
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser 05bcb36
Add more cross links
lowasser 480ef20
Add more cross links
lowasser 1918718
Merge branch 'normed-vector-spaces' into inner-product-spaces
lowasser d461da2
Add more cross links
lowasser 1cd49f7
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser b4add12
Add more cross links
lowasser def4867
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser cbcc2c6
Add more cross links
lowasser ef5fb9d
Update src/complex-numbers/apartness-complex-numbers.lagda.md
lowasser f734c77
Update src/complex-numbers/magnitude-complex-numbers.lagda.md
lowasser b069ea8
Update src/complex-numbers/magnitude-complex-numbers.lagda.md
lowasser e090719
Update src/complex-numbers/magnitude-complex-numbers.lagda.md
lowasser 6783b3d
Apply suggestions from code review
lowasser c02c593
Respond to review comments
lowasser 7cb97fd
Merge branch 'master' into mul-inv-complex
lowasser b1f22ea
Merge branch 'mul-inv-complex' into vector-spaces
lowasser d7fa3aa
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser 3e76b82
Merge branch 'normed-vector-spaces' into inner-product-spaces
lowasser 5ee9b64
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser a7672ce
Use Heyting fields instead of local commutative rings to define vecto…
lowasser 15d5d50
Add external link
lowasser ad8c577
Side note: apartness on R is tight
lowasser 76a89f3
Make things abstract
lowasser 82b9336
More docs
lowasser 17d1b15
Merge branch 'vector-spaces' into normed-vector-spaces
lowasser 8c0f21e
Merge branch 'normed-vector-spaces' into inner-product-spaces
lowasser a453618
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser d3f9a4b
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser 31f56e1
Fix naming
lowasser dc62250
Pythagorean theorem
lowasser fea53e5
make pre-commit
lowasser abee444
Refactor Pythagorean Theorem to its own file
lowasser ec04236
Move bibliography
lowasser d002cac
The reals are an inner product space over themselves under multiplica…
lowasser d04b863
Add more cross links
lowasser a48cf5a
make pre-commit
lowasser 577af2a
make pre-commit
lowasser 63b1f3e
Progress
lowasser 82f0078
Progress
lowasser 0b637c8
Progress
lowasser 5c61143
Progress
lowasser 0bc2dd6
The Cauchy-Schwarz Inequality
lowasser edb9f79
Add to 100 Theorems
lowasser 5cc596e
Progress
lowasser 72a9b34
Back out triangle inequality
lowasser 8e9e998
make pre-commit
lowasser 4bc4486
make pre-commit
lowasser 488852e
Add more cross links
lowasser 76be52f
Fix rebase
lowasser 4837307
Merge branch 'cauchy-schwarz-v2' into hilbert-spaces-v2
lowasser 4ca27cc
Merge rebase
lowasser 8360d20
make pre-commit
lowasser 7af9519
Fix build
lowasser d59a718
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser eeacf35
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser 12da7ee
Correct parentheses
lowasser 7a26343
Remove link from rebase
lowasser a33a18c
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser 124a228
Merge branch 'master' into vector-spaces
lowasser 6720ded
Merge branch 'vector-spaces' into inner-product-spaces
lowasser c8b6579
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser e5cc414
Merge branch 'master' into vector-spaces
lowasser afb9bfd
Update src/commutative-algebra/heyting-fields.lagda.md
lowasser 98f0b57
Describe Heyting vs discrete fields
lowasser 06a594a
Merge remote-tracking branch 'origin/vector-spaces' into vector-spaces
lowasser 454ef06
Update src/foundation/large-apartness-relations.lagda.md
lowasser 1a61315
Update src/commutative-algebra/local-commutative-rings.lagda.md
lowasser cbf5a30
Respond to review comments
lowasser 41d90f5
Merge remote-tracking branch 'origin/vector-spaces' into vector-spaces
lowasser 5ad66fa
make pre-commit
lowasser 67a05af
Merge branch 'master' into vector-spaces
lowasser 81d01f5
Update src/real-numbers/field-of-real-numbers.lagda.md
lowasser 7c39b3b
Merge remote-tracking branch 'origin/vector-spaces' into vector-spaces
lowasser 29100f7
Nonequality of 0 and 1 as its own lemma
lowasser 3a31ee0
make pre-commit
lowasser 3af6e3d
Merge branch 'master' into vector-spaces
lowasser 4fec788
Merge branch 'vector-spaces' into inner-product-spaces
lowasser 5aa2906
Revert added import
lowasser 2018ded
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser 23aef87
Remove unused bibliography
lowasser a777de1
Respond to review comments
lowasser cff02cf
Respond to comments
lowasser dfcb4f2
Merge branch 'master' into inner-product-spaces
lowasser ee395e9
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser dcc437f
Cleanup crediting and Wikipedia theorem pointer
lowasser 73d4390
make pre-commit
lowasser c6dc919
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser fede7f7
Simplifications and cleanups
lowasser 854ae72
Update src/real-numbers/extensionality-multiplication-real-numbers.la…
lowasser 1f481cb
Update src/linear-algebra/orthogonality-real-inner-product-spaces.lag…
lowasser d23060e
Update src/linear-algebra/orthogonality-bilinear-forms-real-vector-sp…
lowasser d167d1c
Respond to review comments
lowasser cfc9cb8
Fix build
lowasser 2a0d451
Merge branch 'master' into inner-product-spaces
lowasser 168c229
Merge branch 'master' into inner-product-spaces
lowasser 3a00228
Merge branch 'inner-product-spaces' into cauchy-schwarz
lowasser 98b321e
Progress
lowasser da9f770
Update src/literature/wikipedia-list-of-theorems.lagda.md
lowasser 2df482f
Update src/real-numbers/addition-positive-and-negative-real-numbers.l…
lowasser 1844a72
Update src/literature/100-theorems.lagda.md
lowasser c769cf7
Respond to comment
lowasser f758356
Merge remote-tracking branch 'origin/cauchy-schwarz' into cauchy-schwarz
lowasser b58edad
make pre-commit
lowasser 3873312
Fix
lowasser c7f531b
Fix build
lowasser 51fe86f
Merge branch 'master' into cauchy-schwarz
fredrik-bakke 417ebb5
Update src/real-numbers/distance-real-numbers.lagda.md
lowasser aed38f4
Update src/real-numbers/multiplication-positive-and-negative-real-num…
lowasser a71e3fe
Update src/linear-algebra/cauchy-schwarz-inequality-real-inner-produc…
lowasser aa967e3
Merge branch 'master' into cauchy-schwarz
lowasser 665e742
Progress
lowasser 5dce16e
Progress
lowasser a21d993
Simplifications and make pre-commit
lowasser 4378106
Merge remote-tracking branch 'origin/cauchy-schwarz' into cauchy-schwarz
lowasser f727cfc
Progress
lowasser 92d128a
Merge branch 'master' into cauchy-schwarz
lowasser 95a3208
Progress
lowasser 10dbd9b
Merge branch 'master' into cauchy-schwarz
lowasser 8f47ec6
Merge branch 'cauchy-schwarz' into hilbert-spaces
lowasser c4471ea
Reword
lowasser b31eb00
Use two-N+
lowasser 1d1246d
Break out lemmas
lowasser 24ac12c
Merge branch 'master' into hilbert-spaces
lowasser File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,111 @@ | ||
| # Real Hilbert spaces | ||
|
|
||
| ```agda | ||
| {-# OPTIONS --lossy-unification #-} | ||
|
|
||
| module linear-algebra.real-hilbert-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 linear-algebra.real-banach-spaces | ||
| open import linear-algebra.real-inner-product-spaces | ||
| open import linear-algebra.real-inner-product-spaces-are-normed | ||
|
|
||
| open import metric-spaces.complete-metric-spaces | ||
| open import metric-spaces.metric-spaces | ||
|
|
||
| open import real-numbers.cauchy-completeness-dedekind-real-numbers | ||
| ``` | ||
|
|
||
| </details> | ||
|
|
||
| ## Idea | ||
|
|
||
| A | ||
| {{#concept "real Hilbert space" WDID=Q190056 WD="Hilbert space" Agda=ℝ-Hilbert-Space}} | ||
| is a [real inner product space](linear-algebra.real-inner-product-spaces.md) for | ||
| which the [metric space](metric-spaces.metric-spaces.md) | ||
| [induced](linear-algebra.real-inner-product-spaces-are-normed.md) by the inner | ||
| product is [complete](metric-spaces.complete-metric-spaces.md). | ||
|
|
||
| ## Definition | ||
|
|
||
| ```agda | ||
| module _ | ||
| {l1 l2 : Level} | ||
| (V : ℝ-Inner-Product-Space l1 l2) | ||
| where | ||
|
|
||
| is-complete-prop-ℝ-Inner-Product-Space : Prop (l1 ⊔ l2) | ||
| is-complete-prop-ℝ-Inner-Product-Space = | ||
| is-complete-prop-Metric-Space | ||
| ( metric-space-ℝ-Inner-Product-Space V) | ||
|
|
||
| is-complete-ℝ-Inner-Product-Space : UU (l1 ⊔ l2) | ||
| is-complete-ℝ-Inner-Product-Space = | ||
| type-Prop is-complete-prop-ℝ-Inner-Product-Space | ||
|
|
||
| ℝ-Hilbert-Space : (l1 l2 : Level) → UU (lsuc l1 ⊔ lsuc l2) | ||
| ℝ-Hilbert-Space l1 l2 = | ||
| type-subtype (is-complete-prop-ℝ-Inner-Product-Space {l1} {l2}) | ||
| ``` | ||
|
|
||
| ## Properties | ||
|
|
||
| ### Every real Hilbert space is a real Banach space | ||
|
|
||
| ```agda | ||
| module _ | ||
| {l1 l2 : Level} | ||
| (V : ℝ-Hilbert-Space l1 l2) | ||
| where | ||
|
|
||
| inner-product-space-ℝ-Hilbert-Space : ℝ-Inner-Product-Space l1 l2 | ||
| inner-product-space-ℝ-Hilbert-Space = pr1 V | ||
|
|
||
| normed-vector-space-ℝ-Hilbert-Space : Normed-ℝ-Vector-Space l1 l2 | ||
| normed-vector-space-ℝ-Hilbert-Space = | ||
| normed-vector-space-ℝ-Inner-Product-Space | ||
| ( inner-product-space-ℝ-Hilbert-Space) | ||
|
|
||
| banach-space-ℝ-Hilbert-Space : ℝ-Banach-Space l1 l2 | ||
| banach-space-ℝ-Hilbert-Space = | ||
| ( normed-vector-space-ℝ-Hilbert-Space , pr2 V) | ||
| ``` | ||
|
|
||
| ### The real numbers are a real Hilbert space with multiplication as the inner product | ||
|
|
||
| ```agda | ||
| abstract | ||
| is-complete-real-inner-product-space-ℝ : | ||
| (l : Level) → | ||
| is-complete-ℝ-Inner-Product-Space (real-inner-product-space-ℝ l) | ||
| is-complete-real-inner-product-space-ℝ l = | ||
| inv-tr | ||
| ( is-complete-Metric-Space) | ||
| ( eq-metric-space-real-inner-product-space-ℝ l) | ||
| ( is-complete-metric-space-ℝ l) | ||
|
|
||
| real-hilbert-space-ℝ : (l : Level) → ℝ-Hilbert-Space l (lsuc l) | ||
| real-hilbert-space-ℝ l = | ||
| ( real-inner-product-space-ℝ l , | ||
| is-complete-real-inner-product-space-ℝ l) | ||
| ``` | ||
|
|
||
| ## See also | ||
|
|
||
| - [Real Banach spaces](linear-algebra.real-banach-spaces.md) | ||
|
|
||
| ## External links | ||
|
|
||
| - [Hilbert space](https://en.wikipedia.org/wiki/Hilbert_space) on Wikipedia | ||
| - [Hilbert space](https://ncatlab.org/nlab/show/Hilbert+space) on $n$Lab |
219 changes: 219 additions & 0 deletions
219
src/linear-algebra/real-inner-product-spaces-are-normed.lagda.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,219 @@ | ||
| # Real inner product spaces are normed | ||
|
|
||
| ```agda | ||
| {-# OPTIONS --lossy-unification #-} | ||
|
|
||
| module linear-algebra.real-inner-product-spaces-are-normed where | ||
| ``` | ||
|
|
||
| <details><summary>Imports</summary> | ||
|
|
||
| ```agda | ||
| open import elementary-number-theory.nonzero-natural-numbers | ||
|
|
||
| open import foundation.action-on-identifications-functions | ||
| open import foundation.dependent-pair-types | ||
| open import foundation.identity-types | ||
| open import foundation.logical-equivalences | ||
| open import foundation.transport-along-identifications | ||
| open import foundation.universe-levels | ||
|
|
||
| open import linear-algebra.cauchy-schwarz-inequality-real-inner-product-spaces | ||
| open import linear-algebra.normed-real-vector-spaces | ||
| open import linear-algebra.real-inner-product-spaces | ||
| open import linear-algebra.seminormed-real-vector-spaces | ||
|
|
||
| open import metric-spaces.equality-of-metric-spaces | ||
| open import metric-spaces.metric-spaces | ||
|
|
||
| open import order-theory.large-posets | ||
|
|
||
| open import real-numbers.absolute-value-real-numbers | ||
| open import real-numbers.addition-nonnegative-real-numbers | ||
| open import real-numbers.addition-real-numbers | ||
| open import real-numbers.inequalities-addition-and-subtraction-real-numbers | ||
| open import real-numbers.inequality-real-numbers | ||
| open import real-numbers.metric-space-of-real-numbers | ||
| open import real-numbers.multiplication-positive-real-numbers | ||
| open import real-numbers.multiplication-real-numbers | ||
| open import real-numbers.positive-real-numbers | ||
| open import real-numbers.raising-universe-levels-real-numbers | ||
| open import real-numbers.rational-real-numbers | ||
| open import real-numbers.similarity-real-numbers | ||
| open import real-numbers.square-roots-nonnegative-real-numbers | ||
| open import real-numbers.squares-real-numbers | ||
| ``` | ||
|
|
||
| </details> | ||
|
|
||
| ## Idea | ||
|
|
||
| Given a [real inner product space](linear-algebra.real-inner-product-spaces.md) | ||
| `V`, defining the norm of `v` as the | ||
| [square root](real-numbers.square-roots-nonnegative-real-numbers.md) of the | ||
| inner product of `v` with itself satisfies the conditions of a | ||
| [normed real vector space](linear-algebra.normed-real-vector-spaces.md). | ||
|
|
||
| ## Definition | ||
|
|
||
| ```agda | ||
| module _ | ||
| {l1 l2 : Level} | ||
| (V : ℝ-Inner-Product-Space l1 l2) | ||
| where | ||
|
|
||
| abstract | ||
| is-triangular-squared-norm-ℝ-Inner-Product-Space : | ||
| (u v : type-ℝ-Inner-Product-Space V) → | ||
| leq-ℝ | ||
| ( squared-norm-ℝ-Inner-Product-Space V | ||
| ( add-ℝ-Inner-Product-Space V u v)) | ||
| ( square-ℝ | ||
| ( ( norm-ℝ-Inner-Product-Space V u) +ℝ | ||
| ( norm-ℝ-Inner-Product-Space V v))) | ||
| is-triangular-squared-norm-ℝ-Inner-Product-Space u v = | ||
| let | ||
| open inequality-reasoning-Large-Poset ℝ-Large-Poset | ||
| in | ||
| chain-of-inequalities | ||
| squared-norm-ℝ-Inner-Product-Space V (add-ℝ-Inner-Product-Space V u v) | ||
| ≤ ( squared-norm-ℝ-Inner-Product-Space V u) +ℝ | ||
| ( real-ℕ 2 *ℝ inner-product-ℝ-Inner-Product-Space V u v) +ℝ | ||
| ( squared-norm-ℝ-Inner-Product-Space V v) | ||
| by leq-eq-ℝ (squared-norm-add-ℝ-Inner-Product-Space V u v) | ||
| ≤ ( squared-norm-ℝ-Inner-Product-Space V u) +ℝ | ||
| ( ( real-ℕ 2) *ℝ | ||
| ( ( norm-ℝ-Inner-Product-Space V u) *ℝ | ||
| norm-ℝ-Inner-Product-Space V v)) +ℝ | ||
| ( squared-norm-ℝ-Inner-Product-Space V v) | ||
| by | ||
| preserves-leq-right-add-ℝ _ _ _ | ||
| ( preserves-leq-left-add-ℝ _ _ _ | ||
| ( preserves-leq-left-mul-ℝ⁺ | ||
| ( positive-real-ℕ⁺ two-ℕ⁺) | ||
| ( transitive-leq-ℝ _ _ _ | ||
| ( cauchy-schwarz-inequality-ℝ-Inner-Product-Space V u v) | ||
| ( leq-abs-ℝ _)))) | ||
| ≤ ( square-ℝ (norm-ℝ-Inner-Product-Space V u)) +ℝ | ||
| ( ( real-ℕ 2) *ℝ | ||
| ( ( norm-ℝ-Inner-Product-Space V u) *ℝ | ||
| norm-ℝ-Inner-Product-Space V v)) +ℝ | ||
| ( square-ℝ (norm-ℝ-Inner-Product-Space V v)) | ||
| by | ||
| leq-eq-ℝ | ||
| ( ap-add-ℝ | ||
| ( ap-add-ℝ | ||
| ( inv | ||
| ( eq-real-square-sqrt-ℝ⁰⁺ | ||
| ( nonnegative-squared-norm-ℝ-Inner-Product-Space V u))) | ||
| ( refl)) | ||
| ( inv | ||
| ( eq-real-square-sqrt-ℝ⁰⁺ | ||
| ( nonnegative-squared-norm-ℝ-Inner-Product-Space V v)))) | ||
| ≤ square-ℝ | ||
| ( ( norm-ℝ-Inner-Product-Space V u) +ℝ | ||
| ( norm-ℝ-Inner-Product-Space V v)) | ||
| by leq-eq-ℝ (inv (square-add-ℝ _ _)) | ||
|
|
||
| is-triangular-norm-ℝ-Inner-Product-Space : | ||
| (u v : type-ℝ-Inner-Product-Space V) → | ||
| leq-ℝ | ||
| ( norm-ℝ-Inner-Product-Space V (add-ℝ-Inner-Product-Space V u v)) | ||
| ( norm-ℝ-Inner-Product-Space V u +ℝ norm-ℝ-Inner-Product-Space V v) | ||
| is-triangular-norm-ℝ-Inner-Product-Space u v = | ||
| tr | ||
| ( leq-ℝ _) | ||
| ( ( inv (eq-abs-sqrt-square-ℝ _)) ∙ | ||
| ( abs-real-ℝ⁰⁺ | ||
| ( ( nonnegative-norm-ℝ-Inner-Product-Space V u) +ℝ⁰⁺ | ||
| ( nonnegative-norm-ℝ-Inner-Product-Space V v)))) | ||
| ( preserves-leq-sqrt-ℝ⁰⁺ | ||
| ( nonnegative-squared-norm-ℝ-Inner-Product-Space V | ||
| ( add-ℝ-Inner-Product-Space V u v)) | ||
| ( nonnegative-square-ℝ | ||
| ( norm-ℝ-Inner-Product-Space V u +ℝ norm-ℝ-Inner-Product-Space V v)) | ||
| ( is-triangular-squared-norm-ℝ-Inner-Product-Space u v)) | ||
|
|
||
| is-seminorm-norm-ℝ-Inner-Product-Space : | ||
| is-seminorm-ℝ-Vector-Space | ||
| ( vector-space-ℝ-Inner-Product-Space V) | ||
| ( norm-ℝ-Inner-Product-Space V) | ||
| is-seminorm-norm-ℝ-Inner-Product-Space = | ||
| ( is-triangular-norm-ℝ-Inner-Product-Space , | ||
| is-absolutely-homogeneous-norm-ℝ-Inner-Product-Space V) | ||
|
|
||
| abstract | ||
| is-extensional-norm-ℝ-Inner-Product-Space : | ||
| (v : type-ℝ-Inner-Product-Space V) → | ||
| (norm-ℝ-Inner-Product-Space V v = raise-ℝ l1 zero-ℝ) → | ||
| is-zero-ℝ-Inner-Product-Space V v | ||
| is-extensional-norm-ℝ-Inner-Product-Space v ∥v∥=0 = | ||
| is-extensional-diagonal-inner-product-ℝ-Inner-Product-Space | ||
| ( V) | ||
| ( v) | ||
| ( equational-reasoning | ||
| squared-norm-ℝ-Inner-Product-Space V v | ||
| = square-ℝ (norm-ℝ-Inner-Product-Space V v) | ||
| by | ||
| inv | ||
| ( eq-real-square-sqrt-ℝ⁰⁺ | ||
| ( nonnegative-squared-norm-ℝ-Inner-Product-Space V v)) | ||
| = square-ℝ (raise-ℝ l1 zero-ℝ) | ||
| by ap square-ℝ ∥v∥=0 | ||
| = raise-ℝ l1 zero-ℝ | ||
| by square-raise-zero-ℝ l1) | ||
|
|
||
| norm-normed-vector-space-ℝ-Inner-Product-Space : | ||
| norm-ℝ-Vector-Space (vector-space-ℝ-Inner-Product-Space V) | ||
| norm-normed-vector-space-ℝ-Inner-Product-Space = | ||
| ( ( norm-ℝ-Inner-Product-Space V , | ||
| is-seminorm-norm-ℝ-Inner-Product-Space) , | ||
| is-extensional-norm-ℝ-Inner-Product-Space) | ||
|
|
||
| normed-vector-space-ℝ-Inner-Product-Space : Normed-ℝ-Vector-Space l1 l2 | ||
| normed-vector-space-ℝ-Inner-Product-Space = | ||
| ( vector-space-ℝ-Inner-Product-Space V , | ||
| norm-normed-vector-space-ℝ-Inner-Product-Space) | ||
|
|
||
| metric-space-ℝ-Inner-Product-Space : Metric-Space l2 l1 | ||
| metric-space-ℝ-Inner-Product-Space = | ||
| metric-space-Normed-ℝ-Vector-Space normed-vector-space-ℝ-Inner-Product-Space | ||
| ``` | ||
|
|
||
| ## Properties | ||
|
|
||
| ### The metric space of the inner product space of `ℝ` over itself is the standard metric space of `ℝ` | ||
|
|
||
| ```agda | ||
| abstract | ||
| isometric-eq-metric-space-real-inner-product-space-normed-real-vector-space-ℝ : | ||
| (l : Level) → | ||
| isometric-eq-Metric-Space | ||
| ( metric-space-ℝ-Inner-Product-Space (real-inner-product-space-ℝ l)) | ||
| ( metric-space-Normed-ℝ-Vector-Space (normed-real-vector-space-ℝ l)) | ||
| isometric-eq-metric-space-real-inner-product-space-normed-real-vector-space-ℝ | ||
| l = | ||
| ( refl , | ||
| λ d x y → | ||
| iff-eq | ||
| ( ap | ||
| ( λ m → leq-prop-ℝ m (real-ℚ⁺ d)) | ||
| ( inv (eq-abs-sqrt-square-ℝ _)))) | ||
|
|
||
| eq-metric-space-real-inner-product-space-normed-real-vector-space-ℝ : | ||
| (l : Level) → | ||
| metric-space-ℝ-Inner-Product-Space (real-inner-product-space-ℝ l) = | ||
| metric-space-Normed-ℝ-Vector-Space (normed-real-vector-space-ℝ l) | ||
| eq-metric-space-real-inner-product-space-normed-real-vector-space-ℝ l = | ||
| eq-isometric-eq-Metric-Space _ _ | ||
| ( isometric-eq-metric-space-real-inner-product-space-normed-real-vector-space-ℝ | ||
| ( l)) | ||
|
|
||
| eq-metric-space-real-inner-product-space-ℝ : | ||
| (l : Level) → | ||
| metric-space-ℝ-Inner-Product-Space (real-inner-product-space-ℝ l) = | ||
| metric-space-ℝ l | ||
| eq-metric-space-real-inner-product-space-ℝ l = | ||
| ( eq-metric-space-real-inner-product-space-normed-real-vector-space-ℝ l) ∙ | ||
| ( eq-metric-space-normed-real-vector-space-metric-space-ℝ l) | ||
| ``` |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.