L2 inner product of finite sequences #
This file defines the weighted L2 inner product of functions f g : ι → R
where ι
is a fintype as
∑ i, conj (f i) * g i
. This convention (conjugation on the left) matches the inner product coming
from RCLike.innerProductSpace
.
TODO #
- Build a non-instance
InnerProductSpace
fromwInner
. cWeight
is a poor name. Can we find better? It doesn't hugely matter for typing, since it's hidden behind the⟪f, g⟫ₙ_[𝕝]
notation, but it does show up in lemma names⟪f, g⟫_[𝕝, cWeight]
is calledwInner_cWeight
. Maybe we should introduce some naming convention, similarly toMeasureTheory.average
?
def
RCLike.wInner
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
(w : ι → ℝ)
(f g : (i : ι) → E i)
:
𝕜
Weighted inner product giving rise to the L2 norm, denoted as ⟪g, f⟫_[𝕜, w]
.
Equations
Instances For
Weighted inner product giving rise to the L2 norm, denoted as ⟪g, f⟫_[𝕜, w]
.
Equations
Instances For
Discrete inner product giving rise to the discrete L2 norm.
Equations
Instances For
Compact inner product giving rise to the compact L2 norm.
Equations
Instances For
theorem
RCLike.wInner_cWeight_eq_smul_wInner_one
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
(f g : (i : ι) → E i)
:
@[simp]
theorem
RCLike.conj_wInner_symm
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
(w : ι → ℝ)
(f g : (i : ι) → E i)
:
@[simp]
theorem
RCLike.wInner_zero_left
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
(w : ι → ℝ)
(g : (i : ι) → E i)
:
@[simp]
theorem
RCLike.wInner_zero_right
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
(w : ι → ℝ)
(f : (i : ι) → E i)
:
@[simp]
theorem
RCLike.wInner_neg_left
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
(w : ι → ℝ)
(f g : (i : ι) → E i)
:
@[simp]
theorem
RCLike.wInner_neg_right
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
(w : ι → ℝ)
(f g : (i : ι) → E i)
:
@[simp]
theorem
RCLike.wInner_of_isEmpty
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
[IsEmpty ι]
(w : ι → ℝ)
(f g : (i : ι) → E i)
:
theorem
RCLike.wInner_smul_left
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
{𝕝 : Type u_5}
[CommSemiring 𝕝]
[StarRing 𝕝]
[Algebra 𝕝 𝕜]
[StarModule 𝕝 𝕜]
[SMulCommClass ℝ 𝕝 𝕜]
[(i : ι) → Module 𝕝 (E i)]
[∀ (i : ι), IsScalarTower 𝕝 𝕜 (E i)]
(c : 𝕝)
(w : ι → ℝ)
(f g : (i : ι) → E i)
:
theorem
RCLike.wInner_smul_right
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
{𝕝 : Type u_5}
[CommSemiring 𝕝]
[StarRing 𝕝]
[Algebra 𝕝 𝕜]
[StarModule 𝕝 𝕜]
[SMulCommClass ℝ 𝕝 𝕜]
[(i : ι) → Module 𝕝 (E i)]
[∀ (i : ι), IsScalarTower 𝕝 𝕜 (E i)]
(c : 𝕝)
(w : ι → ℝ)
(f g : (i : ι) → E i)
:
theorem
RCLike.wInner_one_eq_sum
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
(f g : (i : ι) → E i)
:
theorem
RCLike.wInner_cWeight_eq_expect
{ι : Type u_1}
{𝕜 : Type u_3}
{E : ι → Type u_4}
[Fintype ι]
[RCLike 𝕜]
[(i : ι) → SeminormedAddCommGroup (E i)]
[(i : ι) → InnerProductSpace 𝕜 (E i)]
(f g : (i : ι) → E i)
:
@[simp]
theorem
RCLike.wInner_one_const_left
{ι : Type u_1}
{𝕜 : Type u_3}
[Fintype ι]
[RCLike 𝕜]
(a : 𝕜)
(f : ι → 𝕜)
:
@[simp]
theorem
RCLike.wInner_one_const_right
{ι : Type u_1}
{𝕜 : Type u_3}
[Fintype ι]
[RCLike 𝕜]
(f : ι → 𝕜)
(a : 𝕜)
:
@[simp]
theorem
RCLike.wInner_cWeight_const_left
{ι : Type u_1}
{𝕜 : Type u_3}
[Fintype ι]
[RCLike 𝕜]
(a : 𝕜)
(f : ι → 𝕜)
:
@[simp]
theorem
RCLike.wInner_cWeight_const_right
{ι : Type u_1}
{𝕜 : Type u_3}
[Fintype ι]
[RCLike 𝕜]
(f : ι → 𝕜)
(a : 𝕜)
:
theorem
RCLike.wInner_one_eq_inner
{ι : Type u_1}
{𝕜 : Type u_3}
[Fintype ι]
[RCLike 𝕜]
(f g : ι → 𝕜)
: