LeanAide GPT-4 documentation

Module: Mathlib.Analysis.InnerProductSpace.Basic







norm_inner_div_norm_mul_norm_eq_one_iff

theorem norm_inner_div_norm_mul_norm_eq_one_iff : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), β€–βŸͺx, y⟫_π•œ / (↑‖xβ€– * ↑‖yβ€–)β€– = 1 ↔ x β‰  0 ∧ βˆƒ r, r β‰  0 ∧ y = r β€’ x

This theorem states that for any two vectors `x` and `y` in an inner product space over a field `π•œ`, the absolute value of their inner product divided by the product of their norms equals to 1 if and only if `x` is nonzero and there exists a nonzero scalar `r` such that `y` equals `r` multiplied by `x`. This is one version of the equality case for the Cauchy-Schwarz inequality.

More concisely: For any inner product space over a field and nonzero vectors `x` and `y`, the equality in the Cauchy-Schwarz inequality, i.e., || = |β€–xβ€–β‹…β€–yβ€–|, holds if and only if `y` is a scalar multiple of `x`.

InnerProductSpace.add_left

theorem InnerProductSpace.add_left : βˆ€ {π•œ : Type u_4} {E : Type u_5} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [self : InnerProductSpace π•œ E] (x y z : E), βŸͺx + y, z⟫_π•œ = βŸͺx, z⟫_π•œ + βŸͺy, z⟫_π•œ

This theorem states that the inner product operation in an inner product space is additive in the first coordinate. More specifically, for any field `π•œ` and for any normed additive commutative group `E` (which together form an inner product space), the inner product of the sum of two elements `x` and `y` with a third element `z`, denoted by `βŸͺx + y, z⟫_π•œ`, equals the sum of the inner product of `x` with `z` and the inner product of `y` with `z`, denoted by `βŸͺx, z⟫_π•œ + βŸͺy, z⟫_π•œ`. In other words, the inner product preserves the addition operation in the first coordinate.

More concisely: In an inner product space, the inner product of the sum of two vectors with a third vector is equal to the sum of the inner products of each vector with the third vector.

InnerProductSpace.Core.norm_inner_le_norm

theorem InnerProductSpace.Core.norm_inner_le_norm : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] (x y : F), β€–βŸͺx, y⟫_π•œβ€– ≀ β€–xβ€– * β€–yβ€–

This theorem states the Cauchy-Schwarz inequality in the context of an inner product space. Specifically, for any scalar field π•œ, any type F with the structure of an additive commutative group and a π•œ-module, and any instance of the InnerProductSpace.Core class for π•œ and F, the absolute value of the inner product of any two elements x and y of F (denoted by β€–βŸͺx, y⟫_π•œβ€–) is less than or equal to the product of the norms of x and y (denoted by β€–xβ€– * β€–yβ€–).

More concisely: For any inner product space over a scalar field and two of its elements, the absolute value of their inner product is less than or equal to the product of their norms.

Orthonormal.inner_right_finsupp

theorem Orthonormal.inner_right_finsupp : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (l : ΞΉ β†’β‚€ π•œ) (i : ΞΉ), βŸͺv i, (Finsupp.total ΞΉ E π•œ v) l⟫_π•œ = l i

The theorem `Orthonormal.inner_right_finsupp` states that for a given set of orthonormal vectors `v : ΞΉ β†’ E` in an inner product space `E` over a field `π•œ`, and for any linear combination `l : ΞΉ β†’β‚€ π•œ` of these vectors, the inner product of the vector `v i` (for any `i`) with the evaluated linear combination `(Finsupp.total ΞΉ E π•œ v) l` equals the coefficient `l i` of `v i` in the linear combination. Essentially, this theorem claims that taking the inner product with an orthonormal vector picks out the corresponding coefficient in the linear combination.

More concisely: For any orthonormal sequence `v : ΞΉ β†’ E` in an inner product space `E` over a field `π•œ` and any linear combination `l : ΞΉ β†’β‚€ π•œ` of these vectors, the inner product `〈v i, (Finsupp.total ΞΉ E π•œ v) lβŒͺ = l i` for all `i`.

norm_sub_mul_self

theorem norm_sub_mul_self : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), β€–x - yβ€– * β€–x - yβ€– = β€–xβ€– * β€–xβ€– - 2 * RCLike.re βŸͺx, y⟫_π•œ + β€–yβ€– * β€–yβ€–

This theorem is about expanding the square of the norm of the difference between two vectors in an inner product space. Specifically, for any type `π•œ` that satisfies the RCLike structure, and any type `E` that is a normed additive commutative group and an inner product space over `π•œ`, the square of the norm of the difference between two vectors `x` and `y` in `E` is equal to the square of the norm of `x` minus twice the real part of the inner product of `x` and `y` plus the square of the norm of `y`. In other words, it asserts that β€–x - yβ€–Β² = β€–xβ€–Β² - 2 Re⟨x, y⟩ + β€–yβ€–Β².

More concisely: In an inner product space over a RCLike field, the square of the norm of the difference between two vectors is equal to the sum of the squares of their norms minus twice the real part of their inner product.

InnerProductSpace.Core.nonneg_re

theorem InnerProductSpace.Core.nonneg_re : βˆ€ {π•œ : Type u_4} {F : Type u_5} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] (self : InnerProductSpace.Core π•œ F) (x : F), 0 ≀ RCLike.re βŸͺx, x⟫_π•œ

This is a theorem stating that the inner product is positive semidefinite. In more detail, for any type `π•œ` that has a structure of `RCLike`, any type `F` that has structures of an additive commutative group and a module over `π•œ`, any inner product space core structure on `π•œ` and `F`, and any element `x` of `F`, the real part of the inner product of `x` with itself in the structure `π•œ`, denoted as `βŸͺx, x⟫_π•œ`, is always nonnegative. This theorem is a fundamental property of inner product spaces in linear algebra.

More concisely: For any inner product space over a RCLike type, the real part of the inner product of any vector with itself is nonnegative.

norm_add_pow_two_real

theorem norm_add_pow_two_real : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), β€–x + yβ€– ^ 2 = β€–xβ€– ^ 2 + 2 * βŸͺx, y⟫_ℝ + β€–yβ€– ^ 2

The theorem `norm_add_pow_two_real` states that for any normed additive commutative group `F` that also forms an inner product space over the real numbers, the square of the norm of the sum of any two elements `x` and `y` in `F` equals the sum of the square of the norm of `x`, twice the inner product of `x` and `y` in the real number domain, and the square of the norm of `y`. This is an expansion of the square of the norm of the sum of two vectors, similar to the expansion of a binomial squared in algebra.

More concisely: For any element `x` and `y` in a real inner product space `F` as a normed additive commutative group, the square of their norm is equal to the sum of the square of the norm of `x`, twice the inner product of `x` and `y`, and the square of the norm of `y`.

inner_self_ofReal_re

theorem inner_self_ofReal_re : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x : E), ↑(RCLike.re βŸͺx, x⟫_π•œ) = βŸͺx, x⟫_π•œ

This theorem states that for any type `π•œ` that behaves like a real closed field, and any normed add commutative group `E` that also has an inner product space structure over `π•œ`, the real part of the inner product of any element `x` from `E` with itself is equal to the inner product of `x` with itself. In other words, for any `x` in `E`, the real part of its self-inner product is itself. The real part is obtained using the `RCLike.re` function, and the inner product is denoted by `βŸͺx, x⟫_π•œ`.

More concisely: For any real closed field `π•œ` and normed add commutative group `E` with an inner product space structure over `π•œ`, the real part of the inner product of any `x` in `E` with itself equals the inner product of `x` with `x`. That is, `RCLike.re (βŸͺx, x⟫_π•œ) = βŸͺx, x⟫_π•œ`.

InnerProductSpace.Core.inner_self_nonneg

theorem InnerProductSpace.Core.inner_self_nonneg : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] {x : F}, 0 ≀ RCLike.re βŸͺx, x⟫_π•œ

This theorem states that for any type π•œ with a RCLike (Real or Complex-like) structure, and any type F which forms an additive commutative group and is also a module over π•œ, along with an InnerProductSpace.Core structure on π•œ and F, the inner product of any vector 'x' with itself (βŸͺx, x⟫_π•œ) is nonnegative, as returned by the 're' function of the RCLike structure of π•œ. This captures the common intuition in geometry that the "length" of a vector, represented by taking its inner product with itself, should always be nonnegative.

More concisely: For any RCLike structure π•œ on a type, and any additive commutative group F with a module structure over π•œ and an InnerProductSpace.Core structure, the inner product of any vector 'x' in F with itself is nonnegative (βŸͺx, x⟫_π•œ β‰₯ 0).

Orthonormal.comp_linearIsometry

theorem Orthonormal.comp_linearIsometry : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {E' : Type u_7} [inst_3 : NormedAddCommGroup E'] [inst_4 : InnerProductSpace π•œ E'] {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (f : E β†’β‚—α΅’[π•œ] E'), Orthonormal π•œ (⇑f ∘ v)

The theorem states that a linear isometry preserves the property of being orthonormal. Given a type π•œ with an inner product space structure and normed additive commutative group structures on types E and E', if we have a set of vectors v indexed by ΞΉ in E that is orthonormal in the π•œ sense, any linear isometry from E to E' will map this set to another set of vectors in E' that is also orthonormal in the π•œ sense. In other words, if we apply a linear isometry to each vector in an orthonormal set, the resulting set will also be orthonormal.

More concisely: A linear isometry preserves the orthonormality of vectors between two inner product spaces.

real_inner_div_norm_mul_norm_eq_neg_one_iff

theorem real_inner_div_norm_mul_norm_eq_neg_one_iff : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), βŸͺx, y⟫_ℝ / (β€–xβ€– * β€–yβ€–) = -1 ↔ x β‰  0 ∧ βˆƒ r < 0, y = r β€’ x

The theorem states that for any two vectors in a real inner product space, the value of their inner product divided by the product of their norms equals -1 if and only if both vectors are nonzero and one vector is a negative multiple of the other. The "multiple" here is represented by a real number r that is less than 0. This implies that the vectors are in the same line but in opposite directions, as the inner product divided by the product of their norms measures the cosine of the angle between them, and a cosine of -1 indicates that the vectors are aligned but pointing in opposite directions.

More concisely: Given any two non-zero vectors in a real inner product space, their inner product equals the negative product of their norms if and only if they are negatives of each other.

inner_map_complex

theorem inner_map_complex : βˆ€ {G : Type u_4} [inst : NormedAddCommGroup G] [inst_1 : InnerProductSpace ℝ G] (f : G ≃ₗᡒ[ℝ] β„‚) (x y : G), βŸͺx, y⟫_ℝ = ((starRingEnd β„‚) (f x) * f y).re

This theorem states that for any inner product space of dimension 2 over the real numbers `ℝ` and any isometric linear map `f` from this space to the complex numbers `β„‚`, the inner product of any two vectors `x` and `y` in this space can be calculated as the real part of the complex conjugate of `f(x)` multiplied by `f(y)`. Here, `starRingEnd β„‚` denotes the complex conjugate operation and `.re` denotes the real part of a complex number.

More concisely: For any 2-dimensional real inner product space and isometric linear map to complex numbers, the inner product of two vectors x and y is equal to the real part of the complex conjugate of f(x) times f(y).

real_inner_comm

theorem real_inner_comm : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), βŸͺy, x⟫_ℝ = βŸͺx, y⟫_ℝ := by sorry

This theorem, `real_inner_comm`, states that for any type `F` which is a normed-additive-commutative-group and also an inner product space over the real numbers, the inner product of any two elements `x` and `y` of this type, denoted as `βŸͺy, x⟫_ℝ`, is equal to the inner product `βŸͺx, y⟫_ℝ`. In other words, this theorem demonstrates that the operation of inner product in this context is commutative.

More concisely: For any normed-additive-commutative group and inner product space `F` over the real numbers, the inner product is commutative: `βŸͺx, y⟫_ℝ = βŸͺy, x⟫_ℝ` for all `x, y ∈ F`.

real_inner_eq_norm_mul_self_add_norm_mul_self_sub_norm_sub_mul_self_div_two

theorem real_inner_eq_norm_mul_self_add_norm_mul_self_sub_norm_sub_mul_self_div_two : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), βŸͺx, y⟫_ℝ = (β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€– - β€–x - yβ€– * β€–x - yβ€–) / 2

This theorem is called the polarization identity and it relates the real inner product of two vectors to their norms. Specifically, for any normed additive commutative group `F` that also has an inner product space over the real numbers, the real inner product of any two elements `x` and `y` of `F` is equal to half of the difference between the sum of the squares of their norms and the square of the norm of their difference. In mathematical notation, we have `βŸͺx, y⟫_ℝ = (β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€– - β€–x - yβ€– * β€–x - yβ€–) / 2` for all `x` and `y` in `F`.

More concisely: The real inner product of two vectors in a normed additive commutative group with an inner product space over the real numbers is equal to half the sum of the squares of their norms minus the square of the norm of their difference.

dist_div_norm_sq_smul

theorem dist_div_norm_sq_smul : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {x y : F}, x β‰  0 β†’ y β‰  0 β†’ βˆ€ (R : ℝ), dist ((R / β€–xβ€–) ^ 2 β€’ x) ((R / β€–yβ€–) ^ 2 β€’ y) = R ^ 2 / (β€–xβ€– * β€–yβ€–) * dist x y

This theorem establishes the formula for calculating the Euclidean distance between the images of two nonzero points, `x` and `y`, under an inversion with the center at zero. Specifically, each point is scaled by the square of the ratio of a real number `R` to its norm, and the distance between these transformed points is equal to `(R^2 / (norm of x * norm of y)) * (distance between x and y)`. This is a concept from Euclidean Geometry often related to inversions or transformations around a general point.

More concisely: The Euclidean distance between the inverted points `x` and `y` with center at zero is `(R^2 / (||x|| * ||y||)) * ||x - y||`, where `R` is a real number and `||.||` denotes the Euclidean norm.

innerSL_apply_norm

theorem innerSL_apply_norm : βˆ€ (π•œ : Type u_1) {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x : E), β€–(innerSL π•œ) xβ€– = β€–xβ€–

The theorem `innerSL_apply_norm` states that for any type `π•œ` that behaves like a real or complex number (satisfies `RCLike π•œ`), and any type `E` that is a normed additive commutative group and an inner product space over `π•œ`, the function `innerSL` (which gives the continuous sesquilinear form associated to the inner product) is an isometry. This is expressed precisely by the equation `β€–(innerSL π•œ) xβ€– = β€–xβ€–` for any `x` in `E`, meaning the norm of the image of `x` under `innerSL` is the same as the norm of `x` itself. Note that a related `LinearIsometry`, which is a type of function preserving the inner product structure, is defined as `toDualMap` in `InnerProductSpace.Dual`.

More concisely: For any type `π•œ` acting like a real or complex number and any normed additive commutative group and inner product space `E` over `π•œ`, the continuous sesquilinear form `innerSL` associated to the inner product is an isometry. Equivalently, the norm of `innerSL` applied to any element `x` in `E` equals the norm of `x`.

InnerProductSpace.Core.inner_neg_left

theorem InnerProductSpace.Core.inner_neg_left : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] (x y : F), βŸͺ-x, y⟫_π•œ = -βŸͺx, y⟫_π•œ

This Lean theorem, `InnerProductSpace.Core.inner_neg_left`, states that for any type `π•œ` that resembles a ring, and any additive commutative group `F` that is also a `π•œ`-module, as well as any two elements `x` and `y` of `F`, the inner product of `-x` and `y` is equal to the negation of the inner product of `x` and `y`. In other words, the inner product operation in this context respects the distributivity of scalar multiplication over vector addition.

More concisely: For any additive commutative group `F` that is a `π•œ`-module over a ring `π•œ`, the inner product of `-x` and `y` equals the negation of the inner product of `x` and `y`, for all `x, y ∈ F`.

eq_of_norm_le_re_inner_eq_norm_sq

theorem eq_of_norm_le_re_inner_eq_norm_sq : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {x y : E}, β€–xβ€– ≀ β€–yβ€– β†’ RCLike.re βŸͺx, y⟫_π•œ = β€–yβ€– ^ 2 β†’ x = y

This theorem states that for any types `π•œ` and `E` such that `π•œ` is an instance of `RCLike` and `E` is both a normed additive commutative group and an inner product space over `π•œ`, for any elements `x` and `y` of `E`, if the norm of `x` is less than or equal to the norm of `y` and the real component of the inner product of `x` and `y` equals the square of the norm of `y`, then `x` is equal to `y`. This theorem can be understood geometrically as stating that a sphere of radius equal to the norm of `y` is tangent to a plane described by the equation 'inner product of `x` and `y` equals the square of `y`'s norm' at the point `x = y`.

More concisely: Given a normed additive commutative group `E` over a RCLike ring `π•œ` and an inner product space `E`, if `x, y ∈ E` satisfy `||x|| ≀ ||y||` and `∝(x, y) = ||y||Β²`, then `x = y`.

norm_add_pow_two

theorem norm_add_pow_two : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), β€–x + yβ€– ^ 2 = β€–xβ€– ^ 2 + 2 * RCLike.re βŸͺx, y⟫_π•œ + β€–yβ€– ^ 2

The theorem `norm_add_pow_two` states that for any type `π•œ` which behaves like a ring of scalars (as denoted by `RCLike π•œ`), any `E` which is a normed add commutative group, and any `E` which is an inner product space over `π•œ`, the square of the norm of the sum of two vectors `x` and `y` in `E` is equal to the sum of the square of the norm of `x`, twice the real part of the inner product of `x` and `y`, and the square of the norm of `y`. This essentially provides a way to expand the square of the norm of a sum of two vectors in an inner product space.

More concisely: For any normed add commutative group `E` over a ring of scalars `π•œ`, being an inner product space, the square of the norm of `x + y` equals the sum of the square of the norm of `x`, twice the dot product of `x` and `y`, and the square of the norm of `y`.

Orthonormal.inner_sum

theorem Orthonormal.inner_sum : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (l₁ lβ‚‚ : ΞΉ β†’ π•œ) (s : Finset ΞΉ), βŸͺs.sum fun i => l₁ i β€’ v i, s.sum fun i => lβ‚‚ i β€’ v i⟫_π•œ = s.sum fun i => (starRingEnd π•œ) (l₁ i) * lβ‚‚ i

This theorem states that for any field `π•œ`, if `v` is an orthonormal set of vectors in an inner product space over this field, then the inner product of two linear combinations (expressed as sums) of these vectors, with coefficients given by two functions `l₁` and `lβ‚‚` from `ΞΉ` to `π•œ`, is equal to the sum of the products of the corresponding coefficients, with the first one being conjugated. The sum is taken over a finite subset `s` of `ΞΉ`. In essence, it provides a convenient form to compute the inner product in such cases. The starRingEnd operation denotes complex conjugation for complex fields, and leaves real coefficients unchanged.

More concisely: For any inner product space over a field and orthonormal set of vectors, the inner product of two linear combinations of these vectors is equal to the sum of the products of the corresponding coefficients, with the first coefficient conjugated.

norm_sub_eq_sqrt_iff_real_inner_eq_zero

theorem norm_sub_eq_sqrt_iff_real_inner_eq_zero : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {x y : F}, β€–x - yβ€– = (β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€–).sqrt ↔ βŸͺx, y⟫_ℝ = 0

This theorem, named `norm_sub_eq_sqrt_iff_real_inner_eq_zero`, establishes a relationship between the norms and the inner product of two vectors in a Real number inner product space. Specifically, it asserts that for any two vectors `x` and `y` in a normed additively commutative group with an inner product (a type of metric space), the norm of the difference between `x` and `y` being equal to the square root of the sum of the squares of their norms (a form of Pythagorean theorem) holds if and only if the real inner product of `x` and `y` is zero.

More concisely: In a Real number inner product space, the norm of the difference between two vectors is equal to the square root of the sum of the squares of their norms if and only if their inner product is zero.

im_inner_eq_norm_sub_i_smul_mul_self_sub_norm_add_i_smul_mul_self_div_four

theorem im_inner_eq_norm_sub_i_smul_mul_self_sub_norm_add_i_smul_mul_self_div_four : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), RCLike.im βŸͺx, y⟫_π•œ = (β€–x - RCLike.I β€’ yβ€– * β€–x - RCLike.I β€’ yβ€– - β€–x + RCLike.I β€’ yβ€– * β€–x + RCLike.I β€’ yβ€–) / 4

This theorem, referred to as the Polarization Identity, states that for any field that behaves like the complex numbers or the real numbers (denoted by π•œ), and for any normed additive commutative group with an inner product space (denoted by E), the imaginary part of the inner product of any two elements in E, can be calculated as a function of the norm of the two elements. Specifically, it is the difference of the squared norm of the element obtained by subtracting from the first element the imaginary unit times the second element and the squared norm of the element obtained by adding to the first element the imaginary unit times the second element, all divided by 4.

More concisely: For any normed additive commutative group with an inner product space over a field behaving like the complex numbers, the imaginary part of their inner product equals one-quarter the difference between the squared norms of the sum and difference of the elements, with one multiplied by the imaginary unit.

inner_neg_left

theorem inner_neg_left : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), βŸͺ-x, y⟫_π•œ = -βŸͺx, y⟫_π•œ

This theorem states that for any inner product space `E` over a scalar field `π•œ` with a commutative group structure and a norm, if we have two elements `x` and `y` in `E`, then the inner product of `-x` and `y` is equal to the negation of the inner product of `x` and `y`. In mathematical notation, this would be expressed as `βŸͺ-x, y⟫_π•œ = -βŸͺx, y⟫_π•œ`. This property is one of the basic properties of inner product spaces.

More concisely: The inner product of the negation of an element with another element in an inner product space is equal to the negation of their inner product. In other words, `βŸͺ-x, y⟫_π•œ = -βŸͺx, y⟫_π•œ`.

norm_eq_sqrt_real_inner

theorem norm_eq_sqrt_real_inner : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x : F), β€–xβ€– = (βŸͺx, x⟫_ℝ).sqrt := by sorry

This theorem states that for any type `F` that is a normed add commutative group and has a real inner product space structure, the norm of an element `x` of type `F` is equal to the square root of the real inner product of `x` with itself. In mathematical notation, this is saying that for any vector `x` in such a space `F`, the equation `β€–xβ€– = sqrt()` holds.

More concisely: For any normed add commutative group `F` with a real inner product space structure, the norm of an element `x` equals the square root of the inner product of `x` with itself: `β€–xβ€– = sqrt()`.

real_inner_mul_inner_self_le

theorem real_inner_mul_inner_self_le : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), βŸͺx, y⟫_ℝ * βŸͺx, y⟫_ℝ ≀ βŸͺx, x⟫_ℝ * βŸͺy, y⟫_ℝ

This theorem represents the Cauchy-Schwarz inequality for real inner products. It states that for any type `F` which is a normed add comm group and an inner product space over the real numbers, and for any two elements `x` and `y` of this type, the square of the inner product of `x` and `y` is less than or equal to the product of the inner product of `x` with itself and `y` with itself. In mathematical notation, this can be written as: $(x \cdot y)^2 \leq (x \cdot x) \cdot (y \cdot y)$, where `$\cdot$` denotes the inner product.

More concisely: For any real inner product space `F` and elements `x, y` in `F`, the inner product `(x Β· y)Β²` is less than or equal to the product of the norms `β€–xβ€–Β²` and `β€–yβ€–Β²`.

re_inner_eq_norm_add_mul_self_sub_norm_mul_self_sub_norm_mul_self_div_two

theorem re_inner_eq_norm_add_mul_self_sub_norm_mul_self_sub_norm_mul_self_div_two : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), RCLike.re βŸͺx, y⟫_π•œ = (β€–x + yβ€– * β€–x + yβ€– - β€–xβ€– * β€–xβ€– - β€–yβ€– * β€–yβ€–) / 2

The theorem `re_inner_eq_norm_add_mul_self_sub_norm_mul_self_sub_norm_mul_self_div_two` states that for any type `π•œ` that is a ring with a conjugation operation, and any type `E` that forms a normed additive commutative group and an inner product space over `π•œ`, the real part of the inner product of two elements `x` and `y` of `E` is equal to one-half of the difference between the square of the norm of the sum of `x` and `y`, and the sums of the squares of the norms of `x` and `y`. This is known as the polarization identity.

More concisely: The real part of the inner product of two elements in a normed additive commutative group and an inner product space over a ring with a conjugation operation equals half the difference between the sum of their squared norms and the square of their norm-sum. (Polarization identity)

norm_add_mul_self_real

theorem norm_add_mul_self_real : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), β€–x + yβ€– * β€–x + yβ€– = β€–xβ€– * β€–xβ€– + 2 * βŸͺx, y⟫_ℝ + β€–yβ€– * β€–yβ€–

This theorem states that in a normed add commutative group `F` over the real numbers endowed with an inner product, for any two elements `x` and `y` of `F`, the square of the norm of the sum of `x` and `y` is equal to the sum of the square of the norm of `x`, twice the inner product of `x` and `y`, and the square of the norm of `y`. In simple terms, it's an expression of the identity (x+y)^2 = x^2 + 2xy + y^2 in the context of inner product spaces.

More concisely: In a normed additive commutative group endowed with an inner product, the norm of the sum of two elements is equal to the sum of their norms and twice their inner product.

real_inner_smul_self_left

theorem real_inner_smul_self_left : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x : F) (r : ℝ), βŸͺr β€’ x, x⟫_ℝ = r * (β€–xβ€– * β€–xβ€–)

This theorem states that for any real number `r` and any vector `x` from an inner product space over the real numbers, the inner product of `x` with `r` times itself is equal to `r` times the square of the norm of `x`. In other words, it is defining a property of the inner product in terms of scalar multiplication and vector norms in a real inner product space.

More concisely: For any real inner product space and any of its elements `x` and scalar `r`, the inner product of `x` with `r` times `x` equals `r` times the square of the norm of `x`. In symbols: `βˆ₯xβˆ₯Β² = * rΒ²` or ` = r * βˆ₯xβˆ₯Β²`.

sum_inner

theorem sum_inner : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} (s : Finset ΞΉ) (f : ΞΉ β†’ E) (x : E), βŸͺs.sum fun i => f i, x⟫_π•œ = s.sum fun i => βŸͺf i, x⟫_π•œ

The theorem `sum_inner` states that for any field `π•œ`, any normed add commutative group `E`, and any inner product space `π•œ E`, given a finite set `s` of type `ΞΉ`, a function `f` mapping from `ΞΉ` to `E`, and an element `x` of `E`, the inner product of the sum of the set `s` under function `f` and `x` is equal to the sum of the inner products of each element in the set `s` (when transformed by function `f`) and `x`. In mathematical terms, it's stating that the inner product operation preserves the additivity when the sum operation is applied to the first component of the inner product.

More concisely: For any inner product space over a field and a finite set with a function to the space, the inner product of the sum of the set under the function and an element is equal to the sum of the inner products of each set element and the element under the function.

inner_eq_norm_mul_iff

theorem inner_eq_norm_mul_iff : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {x y : E}, βŸͺx, y⟫_π•œ = ↑‖xβ€– * ↑‖yβ€– ↔ ↑‖yβ€– β€’ x = ↑‖xβ€– β€’ y

This theorem states that given any two vectors `x` and `y` in an inner product space over a field that resembles the complex numbers, if the inner product of `x` and `y` is equal to the product of their norms, then the vectors are nonnegative real multiples of each other. This is one form of the equality case for the Cauchy-Schwarz inequality. Note that there is a related theorem `norm_inner_eq_norm_iff`, which has a similar conclusion but only requires the absolute value of the inner product to equal the product of the norms.

More concisely: If two vectors in an inner product space over a field with complex-like scalars have equal inner product equal to the product of their norms, then they are nonnegative real multiples of each other. (Cauchy-Schwarz equality)

Orthonormal.tsum_inner_products_le

theorem Orthonormal.tsum_inner_products_le : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} (x : E) {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ‘' (i : ΞΉ), β€–βŸͺv i, x⟫_π•œβ€– ^ 2 ≀ β€–xβ€– ^ 2

"Bessel's Inequality" ensures that for any type π•œ, where π•œ is a real or complex-like field, and type E, which is a NormedAddCommGroup and an InnerProductSpace over π•œ, for any type ΞΉ, any element "x" of E, and any function "v" from ΞΉ to E, if "v" is an orthonormal set of vectors in this inner product space (meaning that each vector has norm 1 and any pair of different vectors are orthogonal), then the sum of the squares of the norms of the inner products of "v i" and "x" (for each "i" in ΞΉ) is at most the square of the norm of "x". This theorem is one of the fundamental results in linear algebra regarding inner product spaces.

More concisely: For any orthonormal set of vectors in a real or complex inner product space, the sum of the squares of the inner products of each vector with an arbitrary element and the vector itself is less than or equal to the square of the norm of the element.

InnerProductSpace.Core.add_left

theorem InnerProductSpace.Core.add_left : βˆ€ {π•œ : Type u_4} {F : Type u_5} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] (self : InnerProductSpace.Core π•œ F) (x y z : F), βŸͺx + y, z⟫_π•œ = βŸͺx, z⟫_π•œ + βŸͺy, z⟫_π•œ

This theorem states that the inner product operation in an inner product space is additive in the first coordinate. Specifically, given any inner product space with a field `π•œ` and a module `F`, for any three elements `x`, `y`, and `z` in `F`, the inner product of the sum of `x` and `y` with `z` (`βŸͺx + y, z⟫_π•œ`) is equal to the sum of the inner product of `x` with `z` and the inner product of `y` with `z` (`βŸͺx, z⟫_π•œ + βŸͺy, z⟫_π•œ`). This property is one of the key characteristics of the inner product operation.

More concisely: The inner product of the sum of two vectors in an inner product space is equal to the sum of their inner products with a third vector.

InnerProductSpace.Core.inner_self_im

theorem InnerProductSpace.Core.inner_self_im : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] (x : F), RCLike.im βŸͺx, x⟫_π•œ = 0

The theorem `InnerProductSpace.Core.inner_self_im` states that for any ring π•œ that is a "Real/C-complex-like" structure (RCLike), and for any additive commutative group F that is a module over π•œ, if π•œ and F together form an inner product space (denoted by `InnerProductSpace.Core π•œ F`), then the imaginary part of the inner product of any element `x` of `F` with itself is zero. In other words, the inner product of an element with itself in this context is always a real number.

More concisely: For any RCLike ring π•œ and its module F forming an inner product space, the self-inner product of any element in F is real.

norm_add_eq_sqrt_iff_real_inner_eq_zero

theorem norm_add_eq_sqrt_iff_real_inner_eq_zero : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {x y : F}, β€–x + yβ€– = (β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€–).sqrt ↔ βŸͺx, y⟫_ℝ = 0

This theorem, which is a form of the Pythagorean theorem, states that for any type `F` which is a normed additive commutative group and has an inner product space over the real numbers, given any two elements `x` and `y` of `F`, the norm of the sum of `x` and `y` is equal to the square root of the sum of the squares of the norms of `x` and `y` if and only if the real inner product of `x` and `y` is zero. In mathematical notation, this is saying that β€–x + yβ€– equals the square root of (β€–xβ€–^2 + β€–yβ€–^2) if and only if the inner product of x and y over the real numbers is zero.

More concisely: For any normed additive commutative group `F` with an inner product over the real numbers, the norm of their sum is equal to the square root of the sum of the squares of their norms if and only if they are orthogonal (have zero inner product).

real_inner_self_eq_norm_mul_norm

theorem real_inner_self_eq_norm_mul_norm : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x : F), βŸͺx, x⟫_ℝ = β€–xβ€– * β€–xβ€– := by sorry

This theorem states that for any real inner product space 'F', the real inner product of any element 'x' with itself is equal to the square of the norm of 'x'. Here, a real inner product space is a normed add comm group with an inner product operation that takes two elements of the group and produces a real number. The norm of an element is a measure of its "length" or "magnitude".

More concisely: In a real inner product space, the inner product of an element with itself equals the square of its norm.

InnerProductSpace.Core.inner_smul_left

theorem InnerProductSpace.Core.inner_smul_left : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] (x y : F) {r : π•œ}, βŸͺr β€’ x, y⟫_π•œ = (starRingEnd π•œ) r * βŸͺx, y⟫_π•œ

This theorem states that for any scalar `r` and any two vectors `x` and `y` in an inner product space (over a field `π•œ` with a star-ring-end operation) with scalar multiplication, the inner product of the multiplication of `r` and `x`, with `y`, is equal to the multiplication of the star of `r` and the inner product of `x` and `y`. In mathematical terms, it represents the property: `βŸͺr β€’ x, y⟫_π•œ = (starRingEnd π•œ) r * βŸͺx, y⟫_π•œ`. This theorem demonstrates one of the essential properties of inner product spaces, namely the distributive property of scalar multiplication with respect to the inner product operation.

More concisely: For any scalar `r` and vectors `x` and `y` in an inner product space, the scalar multiplication of `r` with vector `x`, and the inner product of `x` with `y`, is equal to the inner product of `x` with the star-operation of `r` times `y`. In symbolic form: `βŸͺr β€’ x, y⟫_π•œ = βŸͺx, (starRingEnd π•œ) r * y⟫_π•œ`.

re_inner_eq_norm_add_mul_self_sub_norm_sub_mul_self_div_four

theorem re_inner_eq_norm_add_mul_self_sub_norm_sub_mul_self_div_four : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), RCLike.re βŸͺx, y⟫_π•œ = (β€–x + yβ€– * β€–x + yβ€– - β€–x - yβ€– * β€–x - yβ€–) / 4

This theorem states the polarization identity in the context of an inner product space. Given a type `π•œ` which is an instance of `RCLike` and a type `E` which is an instance of `NormedAddCommGroup` and `InnerProductSpace π•œ E`, for any two elements `x` and `y` of `E`, the real part of their inner product equals the difference of the square of the norm of their sum and the square of the norm of their difference, divided by four. The formula is: \[ \text{Re}βŸͺx, y⟫_π•œ = \frac{β€–x + yβ€–^2 - β€–x - yβ€–^2}{4} \] This identity provides an important relationship between the inner product and the norm in an inner product space.

More concisely: The real part of the inner product of two elements in a normed inner product space equals one-fourth the difference between the square of their norms.

LinearIsometry.orthonormal_comp_iff

theorem LinearIsometry.orthonormal_comp_iff : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {E' : Type u_7} [inst_3 : NormedAddCommGroup E'] [inst_4 : InnerProductSpace π•œ E'] {v : ΞΉ β†’ E} (f : E β†’β‚—α΅’[π•œ] E'), Orthonormal π•œ (⇑f ∘ v) ↔ Orthonormal π•œ v

The theorem `LinearIsometry.orthonormal_comp_iff` states that for any set of vectors `v` in an inner product space `E`, and for any linear isometry `f` mapping `E` to another inner product space `E'`, `v` being an orthonormal set is equivalent to the set of vectors obtained by applying `f` to `v` (written as `⇑f ∘ v` in Lean 4) being orthonormal. This means a linear isometry preserves the property of being orthonormal. In terms of mathematical symbols, if `v` is an orthonormal set in `E`, and `f` is a linear isometry from `E` to `E'`, then `f(v)` is orthonormal in `E'`, and vice versa.

More concisely: For any orthonormal set `v` in an inner product space `E` and any linear isometry `f` from `E` to an inner product space `E'`, `f(v)` is orthonormal in `E'` if and only if `v` is orthonormal in `E`.

continuous_inner

theorem continuous_inner : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E], Continuous fun p => βŸͺp.1, p.2⟫_π•œ

This theorem states that for any type `π•œ` and `E`, where `π•œ` is a ring-completeness-like structure, `E` is a normed commutative additive group, and `E` is an inner product space over `π•œ`, the inner product of any pair of elements in `E` is a continuous function. In mathematical terms, it means the inner product operation is continuous in this inner product space.

More concisely: Given a ring-completeness-like structure `π•œ`, a normed commutative additive group `E` over `π•œ`, and an inner product space `E` over `π•œ`, the inner product is a continuous function on `E Γ— E`.

Orthonormal.inner_left_sum

theorem Orthonormal.inner_left_sum : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (l : ΞΉ β†’ π•œ) {s : Finset ΞΉ} {i : ΞΉ}, i ∈ s β†’ βŸͺs.sum fun i => l i β€’ v i, v i⟫_π•œ = (starRingEnd π•œ) (l i)

The theorem states that for a given set of orthonormal vectors in an inner product space, the inner product of a linear combination of these vectors with one of the vectors yields the coefficient of that vector. More specifically, if `π•œ` is a unit type, `E` is a normed add commutative group, and `ΞΉ` is a type, then for a function `v` mapping `ΞΉ` to `E` that forms an orthonormal set, and for a function `l` that assigns scalars from `π•œ` to the elements of `ΞΉ`, for any finite set `s` of `ΞΉ` and any element `i` of `s`, the inner product of the sum of the scaled vectors in `s` with `v i` is equal to the conjugate of the scaling factor `l i`. This essentially means that the inner product in this context can be used to isolate individual components of the linear combination.

More concisely: For an orthonormal set of vectors `v` in an inner product space, the inner product of a linear combination of these vectors with one vector `vi` is equal to the conjugate of the corresponding scaling factor `li`.

linearIndependent_of_ne_zero_of_inner_eq_zero

theorem linearIndependent_of_ne_zero_of_inner_eq_zero : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, (βˆ€ (i : ΞΉ), v i β‰  0) β†’ (Pairwise fun i j => βŸͺv i, v j⟫_π•œ = 0) β†’ LinearIndependent π•œ v

The theorem states that a family of vectors is linearly independent if each vector in the family is nonzero and pairwise orthogonal. Here, 'pairwise orthogonal' means that the inner product of any two distinct vectors in the family equals zero. This holds for any type `π•œ` that behaves like a ring with conjugation, any normed additively commutative group `E` that forms an inner product space over `π•œ`, and a family of vectors `v` indexed by `ΞΉ`.

More concisely: A family of nonzero vectors in an inner product space over a ring with conjugation is linearly independent if and only if any two distinct vectors are orthogonal.

InnerProductSpace.conj_symm

theorem InnerProductSpace.conj_symm : βˆ€ {π•œ : Type u_4} {E : Type u_5} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [self : InnerProductSpace π•œ E] (x y : E), (starRingEnd π•œ) βŸͺy, x⟫_π•œ = βŸͺx, y⟫_π•œ

This theorem states that the inner product operation in an inner product space is *hermitian*. In other words, for any two elements (x and y) of an inner product space, taking the complex conjugate (indicated by `starRingEnd` in Lean 4) of the inner product of y and x gives us the inner product of x and y. This property is often referred to as the conjugate symmetry of the inner product.

More concisely: The inner product operation in an inner product space is conjugate symmetric, that is, for all x and y in the space, = *.

real_inner_sub_sub_self

theorem real_inner_sub_sub_self : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), βŸͺx - y, x - y⟫_ℝ = βŸͺx, x⟫_ℝ - 2 * βŸͺx, y⟫_ℝ + βŸͺy, y⟫_ℝ

This theorem states that for any real inner product space, the inner product of the difference of two vectors with itself expands algebraically to the difference of the inner product of each vector with itself and twice the inner product of the two vectors. In mathematical terms, it says that for all vectors `x` and `y` in the vector space, `βŸͺx - y, x - y⟫_ℝ` equals `βŸͺx, x⟫_ℝ - 2 * βŸͺx, y⟫_ℝ + βŸͺy, y⟫_ℝ`.

More concisely: For any real inner product space, the inner product of the difference of two vectors with itself equals the inner product of the first vector with itself minus twice the inner product of the first and second vectors plus the inner product of the second vector with itself.

Orthonormal.inner_right_fintype

theorem Orthonormal.inner_right_fintype : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} [inst_3 : Fintype ΞΉ] {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (l : ΞΉ β†’ π•œ) (i : ΞΉ), βŸͺv i, Finset.univ.sum fun i => l i β€’ v i⟫_π•œ = l i

This theorem states that for any field `π•œ`, a normed addition commutative group `E`, and an inner product space over `π•œ` and `E`, given a set of orthonormal vectors `v` indexed by a finite type `ΞΉ`, if we take the linear combination of the set of orthonormal vectors with coefficients from a function `l : ΞΉ β†’ π•œ`, then the inner product of any vector `v i` from the set and the linear combination is equal to the coefficient `l i` of the vector `v i` in the combination. In other words, when a linear combination of orthonormal vectors is involved in an inner product operation with one of the orthonormal vectors, the result of the inner product operation is the coefficient of the involved vector in the linear combination.

More concisely: For any inner product space over a field and a set of orthonormal vectors, the inner product of a vector from the set and the linear combination of the set with coefficients from a function is equal to the coefficient of the vector in the combination.

InnerProductSpace.Core.inner_add_add_self

theorem InnerProductSpace.Core.inner_add_add_self : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] (x y : F), βŸͺx + y, x + y⟫_π•œ = βŸͺx, x⟫_π•œ + βŸͺx, y⟫_π•œ + βŸͺy, x⟫_π•œ + βŸͺy, y⟫_π•œ

This theorem states that in an inner product space, the inner product of a vector sum with itself (specifically, `(x + y, x + y)`) can be expanded into the sum of the inner products of the original vectors and their transpositions (i.e., `(x, x) + (x, y) + (y, x) + (y, y)`). The inner product space is defined over a field of scalars `π•œ` and a vector space `F`, where `π•œ` is a real or complex-like field, and `F` is an additive commutative group that also forms a module over `π•œ`.

More concisely: In an inner product space over field `π•œ` and vector space `F`, the inner product of the sum of two vectors `x` and `y` with itself is equal to the sum of the inner products of each vector with its transposition: `(x + y, x + y) = (x, x) + (x, y) + (y, x) + (y, y)`.

Orthonormal.mapLinearIsometryEquiv

theorem Orthonormal.mapLinearIsometryEquiv : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {E' : Type u_7} [inst_3 : NormedAddCommGroup E'] [inst_4 : InnerProductSpace π•œ E'] {v : Basis ΞΉ π•œ E}, Orthonormal π•œ ⇑v β†’ βˆ€ (f : E ≃ₗᡒ[π•œ] E'), Orthonormal π•œ ⇑(v.map f.toLinearEquiv)

This theorem states that the property of being an orthonormal set of vectors in an Inner Product Space is preserved under a linear isometric equivalence. More precisely, if we have an orthonormal set of vectors in an Inner Product Space, and we apply a linear isometric equivalence to these vectors (using `Basis.map`), the resulting set of vectors will also be orthonormal. In mathematical terms, for any field `π•œ`, Inner Product Spaces `E` and `E'`, a basis `v` of `E`, and a linear isometric equivalence `f` from `E` to `E'`, if `v` is an orthonormal set of vectors, then the set of vectors obtained by mapping `v` through `f` (`v.map f.toLinearEquiv`) is also an orthonormal set of vectors.

More concisely: If `v` is an orthonormal set of vectors in an Inner Product Space `E`, then the set `v.map (linearIsometry f)` is an orthonormal set of vectors in the image space of a linear isometric equivalence `f` from `E` to another Inner Product Space.

exists_maximal_orthonormal

theorem exists_maximal_orthonormal : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {s : Set E}, Orthonormal π•œ Subtype.val β†’ βˆƒ w βŠ‡ s, Orthonormal π•œ Subtype.val ∧ βˆ€ u βŠ‡ w, Orthonormal π•œ Subtype.val β†’ u = w

The theorem `exists_maximal_orthonormal` states that for any given orthonormal set `v` of vectors in an inner product space `E` over a real or complex-like field `π•œ`, there exists a maximal orthonormal set that includes `v`. Here, a set is deemed maximal if any set `u` that includes the maximal set and is orthonormal is in fact the same set as the maximal set. In the context of the theorem, sets of vectors are represented as subtypes, which are elements of the base type `E` satisfying a certain property, and the norm of a vector and the inner product between two vectors are defined according to the `NormedAddCommGroup` and `InnerProductSpace` structures respectively.

More concisely: Given any orthonormal set `v` in an inner product space `E` over a real or complex field, there exists a maximal orthonormal set containing `v` that is equal to every other orthonormal set including it.

Submodule.coe_inner

theorem Submodule.coe_inner : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (W : Submodule π•œ E) (x y : β†₯W), βŸͺx, y⟫_π•œ = βŸͺ↑x, ↑y⟫_π•œ

This theorem states that for any subclass `π•œ` of Type `u_1` and subclass `E` of Type `u_2` under the conditions that `π•œ` is a type similar to `ℝ` (the set of real numbers), `E` is a normed additive commutative group, and `E` is an inner product space over `π•œ`, if `W` is a submodule of `π•œ` and `x` and `y` are members of `W`, then the inner product of `x` and `y` in `π•œ` is the same as the inner product of the coerced values of `x` and `y` in `π•œ`. Essentially, this means that the inner product of two elements in a submodule is the same as their inner product in the containing space.

More concisely: For any submodule `W` of a type similar to `ℝ` `π•œ`, and for any `x` and `y` in `W`, the inner product of `x` and `y` in `π•œ` equals the inner product of their coerced values in `π•œ`.

orthonormal_subtype_iff_ite

theorem orthonormal_subtype_iff_ite : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] [inst_3 : DecidableEq E] {s : Set E}, Orthonormal π•œ Subtype.val ↔ βˆ€ v ∈ s, βˆ€ w ∈ s, βŸͺv, w⟫_π•œ = if v = w then 1 else 0

The theorem `orthonormal_subtype_iff_ite` describes the condition for a set of vectors in an InnerProductSpace to be orthonormal. This condition is expressed as an `if...else` statement, relating to the inner product of any two vectors `v` and `w` from a given set `s`. The theorem states that for all types `π•œ` and `E`, where `π•œ` exhibits properties of a ring and `E` is a NormedAddCommGroup, and if `E` also has a DecidableEq instance, then a set `s` of elements of type `E` is orthonormal if and only if for all vectors `v` and `w` in `s`, the inner product of `v` and `w` is 1 if `v` and `w` are the same and 0 otherwise.

More concisely: A set of vectors in a Normed Additive Commutative Group endowed with a Decidable Equality relation and an Inner Product over a commutative ring is orthonormal if and only if the inner product of any two distinct vectors in the set is zero, and the inner product of any vector with itself is one.

norm_eq_sqrt_inner

theorem norm_eq_sqrt_inner : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x : E), β€–xβ€– = (RCLike.re βŸͺx, x⟫_π•œ).sqrt

This theorem states that for any type `π•œ` that behaves like a division ring (`RCLike π•œ`), a normed additive commutative group `E`, and a inner product space `π•œ E`, the norm of a vector `x` in `E` is equal to the square root of the real part of the inner product of `x` with itself. Specifically, `β€–xβ€– = sqrt(ReβŸͺx, x⟫)`, where `β€–xβ€–` is the norm of `x`, `sqrt` is the square root function, `ReβŸͺx, x⟫` is the real part of the inner product of `x` with itself. This is a generalization of the Pythagorean theorem to inner product spaces.

More concisely: For any normed additive commutative group `E` over a division ring `π•œ` with an inner product, the norm of a vector `x` equals the square root of the real part of its inner product with itself: `β€–xβ€– = sqrt(ReβŸͺx, x⟫)`.

norm_add_sq_eq_norm_sq_add_norm_sq_of_inner_eq_zero

theorem norm_add_sq_eq_norm_sq_add_norm_sq_of_inner_eq_zero : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), βŸͺx, y⟫_π•œ = 0 β†’ β€–x + yβ€– * β€–x + yβ€– = β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€–

The theorem `norm_add_sq_eq_norm_sq_add_norm_sq_of_inner_eq_zero` is a generalization of the Pythagorean theorem in the context of an inner product space. In more detail, it states that for any two vectors `x` and `y` in an inner product space over a field `π•œ`, if the inner product of the two vectors is zero, then the square of the norm of the sum of the vectors is equal to the sum of the squares of the norms of the individual vectors. This is analogous to the Pythagorean theorem which states that in a right-angled triangle, the square of the length of the hypotenuse (the side opposite the right angle) is equal to the sum of the squares of the lengths of the other two sides.

More concisely: In an inner product space, the square of the norm of the sum of two vectors is equal to the sum of the squares of their norms if and only if their inner product is zero.

real_inner_add_add_self

theorem real_inner_add_add_self : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), βŸͺx + y, x + y⟫_ℝ = βŸͺx, x⟫_ℝ + 2 * βŸͺx, y⟫_ℝ + βŸͺy, y⟫_ℝ

This theorem states that for any real inner product space (a vector space with inner product over the real numbers ℝ) and any two vectors x and y in that space, the inner product of the sum of x and y with itself can be expanded to the sum of the inner product of x with itself, twice the inner product of x and y, and the inner product of y with itself. In mathematical notation, this theorem is written as: ⟨x + y, x + y⟩_ℝ = ⟨x, x⟩_ℝ + 2 * ⟨x, y⟩_ℝ + ⟨y, y⟩_ℝ.

More concisely: The inner product of the sum of two vectors in a real inner product space with each other is equal to the sum of their self-inner products and twice their inner product with each other.

Orthonormal.orthonormal_of_forall_eq_or_eq_neg

theorem Orthonormal.orthonormal_of_forall_eq_or_eq_neg : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v w : ΞΉ β†’ E}, Orthonormal π•œ v β†’ (βˆ€ (i : ΞΉ), w i = v i ∨ w i = -v i) β†’ Orthonormal π•œ w

The theorem `Orthonormal.orthonormal_of_forall_eq_or_eq_neg` states that given an orthonormal family of vectors `v` in an inner product space `E` over a field `π•œ`, another family of vectors `w` is also orthonormal if every vector in `w` equals the corresponding vector in `v` or its negation. In other words, if we have a set of vectors that is orthonormal, and a second set where each vector is either the positive or negative of the corresponding vector in the first set, then the second set is also orthonormal.

More concisely: If `{v_i}` is an orthonormal family in an inner product space `E` over a field `π•œ`, and for all `i`, `w_i` is either `v_i` or its negation, then `{w_i}` is also an orthonormal family in `E`.

inner_zero_right

theorem inner_zero_right : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x : E), βŸͺx, 0⟫_π•œ = 0

This theorem, `inner_zero_right`, states that for any type `π•œ` behaving like a ring (indicated by `RCLike π•œ`) and any normed additive commutative group `E` which also constitutes an inner product space over `π•œ` (denoted as `InnerProductSpace π•œ E`), the inner product of any element `x` of `E` with the zero element is always zero. This is a fundamental property that holds in any inner product space.

More concisely: For any ring-like type `π•œ` and inner product space `E` over `π•œ`, the inner product of any element in `E` with the zero element is zero.

inner_eq_norm_mul_iff_real

theorem inner_eq_norm_mul_iff_real : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {x y : F}, βŸͺx, y⟫_ℝ = β€–xβ€– * β€–yβ€– ↔ β€–yβ€– β€’ x = β€–xβ€– β€’ y

This theorem states that for any two vectors `x` and `y` in a real inner product space, if the inner product of `x` and `y` equals the product of their norms (i.e., `βŸͺx, y⟫ = β€–xβ€– * β€–yβ€–`), then the vectors are nonnegative real multiples of each other. This is one form of the equality case for the Cauchy-Schwarz inequality. Note, this is stronger than the related result where the absolute value of the inner product equals the product of the norms.

More concisely: If two vectors in a real inner product space have the same inner product as the product of their norms, then they are nonnegative real multiples.

Orthonormal.linearIndependent

theorem Orthonormal.linearIndependent : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ LinearIndependent π•œ v

This theorem states that for any orthonormal set of vectors in an inner product space, the set is also linearly independent. More specifically, given a field `π•œ` and a normed additive commutative group `E` that forms an inner product space, any function `v` from an index set `ΞΉ` to `E` which forms an orthonormal set is also linearly independent over the field `π•œ`. In other words, no vector in the orthonormal set can be expressed as a linear combination of the others.

More concisely: In an inner product space, every orthonormal set of vectors is linearly independent.

InnerProductSpace.Core.smul_left

theorem InnerProductSpace.Core.smul_left : βˆ€ {π•œ : Type u_4} {F : Type u_5} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] (self : InnerProductSpace.Core π•œ F) (x y : F) (r : π•œ), βŸͺr β€’ x, y⟫_π•œ = (starRingEnd π•œ) r * βŸͺx, y⟫_π•œ

This theorem states that for any type π•œ that behaves like a ring of complex numbers, and any type F that is a module over π•œ, the inner product operation is conjugate linear in the first coordinate. This means that for any elements `x` and `y` of `F`, and any scalar `r` of π•œ, the inner product of `r` scaled by `x` and `y` is equal to the complex conjugate of `r` multiplied by the inner product of `x` and `y`.

More concisely: For any complex-like ring π•œ and its module F, the inner product is conjugate linear in the first coordinate: $(r\cdot x)\cdot y^* = r^*\cdot (x\cdot y)$, where $r\cdot x$ is the scalar multiplication, $y^*$ is the complex conjugate of $y$, and $r^*$ is the complex conjugate of $r$.

InnerProductSpace.Core.inner_conj_symm

theorem InnerProductSpace.Core.inner_conj_symm : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] (x y : F), (starRingEnd π•œ) βŸͺy, x⟫_π•œ = βŸͺx, y⟫_π•œ

This theorem, `InnerProductSpace.Core.inner_conj_symm`, states that for any type `π•œ` that behaves like a ring with conjugation, and for any type `F` that behaves like an additive commutative group and is a `π•œ`-module, the inner product of `x` and `y` in an inner product space is equal to the complex conjugate of the inner product of `y` and `x`. Here, `starRingEnd π•œ` denotes the complex conjugate in the ring `π•œ`. This is a property of inner product spaces in general over the complex numbers.

More concisely: For any complex ring `π•œ` with conjugation and additive commutative `π•œ`-module `F`, the inner product of `x` and `y` in an inner product space equals the complex conjugate of the inner product of `y` and `x`.

real_inner_le_norm

theorem real_inner_le_norm : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), βŸͺx, y⟫_ℝ ≀ β€–xβ€– * β€–yβ€–

This theorem states the Cauchy-Schwarz inequality in the context of an inner product space over the real numbers. For any two elements `x` and `y` in a given normed additive commutative group `F` that is also an inner product space over the real numbers, the absolute value of the inner product of `x` and `y` does not exceed the product of the norms of `x` and `y`.

More concisely: For any two vectors x and y in a real inner product space, the inner product of x and y is less than or equal to the product of their magnitudes.

norm_add_sq

theorem norm_add_sq : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), β€–x + yβ€– ^ 2 = β€–xβ€– ^ 2 + 2 * RCLike.re βŸͺx, y⟫_π•œ + β€–yβ€– ^ 2

The theorem `norm_add_sq` states that for any two vectors `x` and `y` in an inner product space over a field `π•œ` (which is also a normed commutative additive group and satisfies the ring-complex-like property), the square of the norm of the sum of the vectors equals the sum of the square of the norm of `x`, twice the real part of the inner product of `x` and `y`, and the square of the norm of `y`. This is essentially the Pythagorean theorem generalized to inner product spaces.

More concisely: In an inner product space over a field, the norm of the sum of two vectors equals the sum of their norms squared, plus twice the real part of their inner product.

LinearIsometry.inner_map_map

theorem LinearIsometry.inner_map_map : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {E' : Type u_7} [inst_3 : NormedAddCommGroup E'] [inst_4 : InnerProductSpace π•œ E'] (f : E β†’β‚—α΅’[π•œ] E') (x y : E), βŸͺf x, f y⟫_π•œ = βŸͺx, y⟫_π•œ

This theorem states that a linear isometry preserves the inner product. More specifically, for any scalar field `π•œ` and two inner product spaces `E` and `E'` over `π•œ`, if `f` is a linear isometry mapping from `E` to `E'`, then the inner product of `f(x)` and `f(y)` in `E'` is equal to the inner product of `x` and `y` in `E`, where `x` and `y` are any elements of `E`. This theorem is fundamental in the field of linear algebra and is critical to understanding the properties of linear transformations in inner product spaces.

More concisely: Given any linear isometry `f` between inner product spaces `E` and `E'` over scalar field `π•œ`, the inner product `⟨f(x), f(y)βŸ©β€²` in `E'` equals `⟨x, y⟩` in `E` for any `x, y` in `E`.

real_inner_div_norm_mul_norm_eq_neg_one_of_ne_zero_of_neg_mul

theorem real_inner_div_norm_mul_norm_eq_neg_one_of_ne_zero_of_neg_mul : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {x : F} {r : ℝ}, x β‰  0 β†’ r < 0 β†’ βŸͺx, r β€’ x⟫_ℝ / (β€–xβ€– * β€–r β€’ xβ€–) = -1

This theorem states that in a real inner product space, if you take a nonzero vector and multiply it by a negative scalar to yield a new vector, the inner product of the original vector and the new vector, divided by the product of their norms (or lengths), is always -1. Important conditions here are that the original vector must not be the zero vector, and the scalar used for multiplication must be less than zero.

More concisely: In a real inner product space, the dot product of a non-zero vector and its negative scalar multiple, normalized by the product of their norms, equals -1.

Orthonormal.inner_finsupp_eq_sum_left

theorem Orthonormal.inner_finsupp_eq_sum_left : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (l₁ lβ‚‚ : ΞΉ β†’β‚€ π•œ), βŸͺ(Finsupp.total ΞΉ E π•œ v) l₁, (Finsupp.total ΞΉ E π•œ v) lβ‚‚βŸ«_π•œ = l₁.sum fun i y => (starRingEnd π•œ) y * lβ‚‚ i

This theorem states that if we have a set of orthonormal vectors, `v`, in an inner product space over a ring `π•œ`, then the inner product of two linear combinations of these vectors, `l₁` and `lβ‚‚`, is equal to the sum of the product of the conjugate of the coefficient of `l₁` and the coefficient of `lβ‚‚` over each element `i` in the support of `l₁`. The linear combinations are expressed using the `Finsupp.total` function, which interprets a function `l : Ξ± β†’β‚€ R` as a linear combination of a family of elements `(v : Ξ± β†’ M)`.

More concisely: Given an inner product space over a ring, if `v` is a set of orthonormal vectors and `l₁` and `lβ‚‚` are linear combinations of these vectors using `Finsupp.total`, then the inner product of `l₁` and `lβ‚‚` equals the sum of the products of the conjugates of their respective coefficients over the support of `l₁`.

Orthonormal.inner_left_finsupp

theorem Orthonormal.inner_left_finsupp : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (l : ΞΉ β†’β‚€ π•œ) (i : ΞΉ), βŸͺ(Finsupp.total ΞΉ E π•œ v) l, v i⟫_π•œ = (starRingEnd π•œ) (l i)

The theorem `Orthonormal.inner_left_finsupp` states that for any type `π•œ` with real-like structure and any normed additive commutative group `E` equipped with an inner product space over `π•œ`, given a set of orthonormal vectors `v` indexed by type `ΞΉ`, for any function `l` from `ΞΉ` to `π•œ` and any index `i` of type `ΞΉ`, the inner product of the total linear combination of the vectors `v` with respect to the function `l` and the vector at index `i` is equal to the complex conjugate of the value of `l` at index `i`. In other words, the inner product of a linear combination of a set of orthonormal vectors with one of those vectors isolates the coefficient of that vector.

More concisely: For any orthonormal set of vectors in a real inner product space and any function mapping indices to scalars, the inner product of the linear combination of the vectors with the corresponding function value and any vector from the set equals the complex conjugate of that function value.

inner_eq_one_iff_of_norm_one

theorem inner_eq_one_iff_of_norm_one : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {x y : E}, β€–xβ€– = 1 β†’ β€–yβ€– = 1 β†’ (βŸͺx, y⟫_π•œ = 1 ↔ x = y)

This theorem states that in an inner product space over a ring that behaves like the real numbers (denoted as `π•œ`) with an associated normed additive commutative group (`E`), if the norm of two vectors `x` and `y` each is `1` (meaning they are unit vectors), then the inner product of these two vectors being `1` implies that the two vectors are identical. This is a specific form of the equality case for the Cauchy-Schwarz inequality.

More concisely: In an inner product space over a real-like ring with associated normed additive commutative group, if two unit vectors have an inner product of 1, then they are identical.

LinearIsometryEquiv.inner_map_map

theorem LinearIsometryEquiv.inner_map_map : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {E' : Type u_7} [inst_3 : NormedAddCommGroup E'] [inst_4 : InnerProductSpace π•œ E'] (f : E ≃ₗᡒ[π•œ] E') (x y : E), βŸͺf x, f y⟫_π•œ = βŸͺx, y⟫_π•œ

This theorem states that for any type π•œ, any normed additive commutative group E with an inner product space over π•œ, and another such group E', if there is a linear isometric equivalence 'f' from E to E', then the inner product of f(x) and f(y) (where x and y are elements of E) is equal to the inner product of x and y. In other words, a linear isometric equivalence preserves the inner product.

More concisely: A linear isometric map between two inner product spaces preserves the inner product.

OrthogonalFamily.independent

theorem OrthogonalFamily.independent : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {V : ΞΉ β†’ Submodule π•œ E}, (OrthogonalFamily π•œ (fun i => β†₯(V i)) fun i => (V i).subtypeβ‚—α΅’) β†’ CompleteLattice.Independent V

This theorem states that if a family of subspaces in an inner product space (over a field and a normed add commutative group) is orthogonal, then it forms an independent family of subspaces. Specifically, any collection of elements, each taken from a different subspace in the orthogonal family, is linearly independent. Additionally, the pairwise intersections of elements of the family are zero.

More concisely: If a family of subspaces in an inner product space is orthogonal, then any collection of one element from each subspace is linearly independent and their pairwise intersections are zero.

inner_self_eq_norm_mul_norm

theorem inner_self_eq_norm_mul_norm : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x : E), RCLike.re βŸͺx, x⟫_π•œ = β€–xβ€– * β€–xβ€–

The theorem `inner_self_eq_norm_mul_norm` states that for any type `π•œ` that is a ring complete (as defined by `RCLike π•œ`), and any type `E` that is a normed add commutative group and an inner product space over `π•œ`, the real component of the inner product of a vector `x` with itself (denoted by `βŸͺx, x⟫_π•œ`) is equal to the square of the norm of the vector `x` (denoted by `β€–xβ€– * β€–xβ€–`). This is a fundamental property in inner product spaces representing the Pythagorean theorem in any such space.

More concisely: For any ring complete `π•œ`, normed add commutative group and inner product space `E` over `π•œ`, the inner product `βŸͺx, x⟫_π•œ` of a vector `x` with itself equals the square of its norm `β€–xβ€– * β€–xβ€–`.

inner_self_eq_zero

theorem inner_self_eq_zero : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {x : E}, βŸͺx, x⟫_π•œ = 0 ↔ x = 0

This theorem states that for any type `π•œ` which behaves like a ring, and any normed add commutative group `E` which is also an inner product space over `π•œ`, the inner product of a vector `x` with itself is zero if and only if the vector `x` itself is the zero vector. This is a fundamental property in the context of inner product spaces.

More concisely: For any normed add commutative `π•œ`-module `E` (where `π•œ` is a ring) being an inner product space, the inner product of a vector `x` with itself equals zero if and only if `x` is the zero vector.

norm_add_sq_real

theorem norm_add_sq_real : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), β€–x + yβ€– ^ 2 = β€–xβ€– ^ 2 + 2 * βŸͺx, y⟫_ℝ + β€–yβ€– ^ 2

This theorem states that for any normed additively commutative group `F` equipped with a real inner product space, the square of the norm of the sum of any two elements `x` and `y` in `F` can be expressed as the sum of the square of the norm of `x`, twice the real inner product of `x` and `y`, and the square of the norm of `y`. This is akin to the algebraic expansion of the square of a binomial, `(a + b)^2 = a^2 + 2ab + b^2`, but in the context of normed vector spaces.

More concisely: For any normed additively commutative group `F` endowed with a real inner product, the norm of the sum of two elements `x` and `y` squared equals the sum of the squares of their norms, plus twice the real inner product of `x` and `y`.

inner_conj_symm

theorem inner_conj_symm : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), (starRingEnd π•œ) βŸͺy, x⟫_π•œ = βŸͺx, y⟫_π•œ

This theorem, `inner_conj_symm`, states that for any two elements `x` and `y` in an inner product space `E` over a field `π•œ` that has a star ring endomorphism, the inner product of `y` and `x` conjugated by the star ring endomorphism is equal to the inner product of `x` and `y`. In mathematical terms, it states that ⟨y, xβŸ©β‚–βŽ = ⟨x, yβŸ©β‚– for all `x` and `y` in `E`, where ⟨., .βŸ©β‚– is the inner product in the space `E`.

More concisely: For any inner product space E over a field with a star ring endomorphism, the conjugated inner product of y and x equals the inner product of x and y, i.e., ⟨y, xβŸ©β‚–βŽ = ⟨x, yβŸ©β‚– for all x and y in E.

inner_smul_right

theorem inner_smul_right : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E) (r : π•œ), βŸͺx, r β€’ y⟫_π•œ = r * βŸͺx, y⟫_π•œ

This theorem, named `inner_smul_right`, states that for any inner product space `E` over a field `π•œ` and any two vectors `x` and `y` from this space and a scalar `r` from the field, the inner product of `x` and the scalar multiplication of `r` and `y` is equal to the scalar `r` multiplied by the inner product of `x` and `y`. In terms of mathematics, it can be written as βŸͺx, r β€’ y⟫_π•œ = r * βŸͺx, y⟫_π•œ. This theorem essentially captures one of the key properties of inner product spaces related to scalar multiplication.

More concisely: For any inner product space, the inner product of a vector with a scalar times another vector is equal to the scalar times the inner product of the two vectors.

inner_neg_right

theorem inner_neg_right : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), βŸͺx, -y⟫_π•œ = -βŸͺx, y⟫_π•œ

The theorem `inner_neg_right` states that for any two elements `x` and `y` of an inner product space `E` over a scalar field `π•œ` (with `π•œ` being a field that behaves like real or complex numbers and `E` being a normed additive commutative group), the inner product of `x` and the negation of `y` is equal to the negation of the inner product of `x` and `y`. In mathematical notation, this is `βŸͺx, -y⟫_π•œ = -βŸͺx, y⟫_π•œ`.

More concisely: For any inner product space E over field π•œ, the inner product of an element x with the negation of another element y is the negative of their inner product, i.e., βŸͺx, -y⟫_π•œ = -βŸͺx, y⟫_π•œ.

inner_lt_one_iff_real_of_norm_one

theorem inner_lt_one_iff_real_of_norm_one : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {x y : F}, β€–xβ€– = 1 β†’ β€–yβ€– = 1 β†’ (βŸͺx, y⟫_ℝ < 1 ↔ x β‰  y)

The theorem `inner_lt_one_iff_real_of_norm_one` states that for any two unit vectors `x` and `y` in a real inner product space, the inner product of `x` and `y` being strictly less than `1` implies that `x` and `y` are distinct. Conversely, if `x` and `y` are distinct, their inner product is strictly less than `1`. This theorem is a specific case of the Cauchy-Schwarz inequality, which bounds the inner product of two vectors in terms of their norms.

More concisely: In a real inner product space, two distinct unit vectors have an inner product strictly less than 1, while two unit vectors with an inner product strictly less than 1 are distinct.

inner_add_right

theorem inner_add_right : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y z : E), βŸͺx, y + z⟫_π•œ = βŸͺx, y⟫_π•œ + βŸͺx, z⟫_π•œ

This theorem, named `inner_add_right`, states that for any type `π•œ` and `E`, where `π•œ` has a structure of a ring-like ordered field (`RCLike π•œ`) and `E` is a normed additive commutative group with an inner product space over `π•œ` (`InnerProductSpace π•œ E`), the inner product of `x` with the sum of `y` and `z` (denoted by `βŸͺx, y + z⟫_π•œ`) equals to the sum of the inner product of `x` with `y` and the inner product of `x` with `z` (denoted by `βŸͺx, y⟫_π•œ + βŸͺx, z⟫_π•œ`). This theorem is a property of inner product spaces reflecting the distributivity of the inner product with respect to vector addition on the right.

More concisely: For any ring-like ordered field `π•œ` and inner product space `π•œ[E]`, the inner product of `x` with the sum of `y` and `z` equals the sum of the inner products of `x` with `y` and `z`.

ext_inner_right

theorem ext_inner_right : βˆ€ (π•œ : Type u_1) {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {x y : E}, (βˆ€ (v : E), βŸͺx, v⟫_π•œ = βŸͺy, v⟫_π•œ) β†’ x = y

The theorem `ext_inner_right` states that in any inner product space `E` over a field `π•œ`, if two vectors `x` and `y` have the same inner product with every other vector `v` in the space, then `x` and `y` are equal. This essentially means that a vector is uniquely defined by its inner products with all other vectors in the space.

More concisely: If two vectors in an inner product space have the same inner product with every other vector, then they are equal.

abs_real_inner_le_norm

theorem abs_real_inner_le_norm : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), |βŸͺx, y⟫_ℝ| ≀ β€–xβ€– * β€–yβ€–

This is a theorem stating the Cauchy-Schwarz inequality in the context of normed additive commutative groups and inner product spaces over the real numbers. For any two elements `x` and `y` of a normed additive commutative group `F` that also forms an inner product space over the real numbers, the absolute value of their inner product is less than or equal to the product of their norms.

More concisely: For any two elements in a real inner product space, the inner product of the elements is less than or equal to the product of their norms.

parallelogram_law

theorem parallelogram_law : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {x y : E}, βŸͺx + y, x + y⟫_π•œ + βŸͺx - y, x - y⟫_π•œ = 2 * (βŸͺx, x⟫_π•œ + βŸͺy, y⟫_π•œ)

This theorem states the parallelogram law in the context of inner product spaces. Given an underlying field π•œ and a normed additively commutative group E which forms an inner product space, for any two elements x and y in E, the inner product of x + y with itself plus the inner product of x - y with itself equals twice the sum of the inner product of x with itself and the inner product of y with itself. In vector notation, this corresponds to the assertion that ||x+y||Β² + ||x-y||Β² = 2(||x||Β² + ||y||Β²), a fundamental identity in the geometry of inner product spaces.

More concisely: In an inner product space E over field π•œ, the norms of x and y satisfy the parallelogram identity: ||x+y||Β² + ||x-y||Β² = 2(||x||Β² + ||y||Β²).

OrthogonalFamily.summable_iff_norm_sq_summable

theorem OrthogonalFamily.summable_iff_norm_sq_summable : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {G : ΞΉ β†’ Type u_5} [inst_3 : (i : ΞΉ) β†’ NormedAddCommGroup (G i)] [inst_4 : (i : ΞΉ) β†’ InnerProductSpace π•œ (G i)] {V : (i : ΞΉ) β†’ G i β†’β‚—α΅’[π•œ] E}, OrthogonalFamily π•œ G V β†’ βˆ€ [inst_5 : CompleteSpace E] (f : (i : ΞΉ) β†’ G i), (Summable fun i => (V i) (f i)) ↔ Summable fun i => β€–f iβ€– ^ 2

The theorem `OrthogonalFamily.summable_iff_norm_sq_summable` states that for a given family `f` of mutually-orthogonal elements of a normed additively commutative group `E` over a field `π•œ` with an inner product space structure, the family `f` is summable if and only if the function mapping each index `i` to the square of the norm of `f i` is summable. This holds under the assumption that `E` is a complete space, and each `G i` is a normed additively commutative group with an inner product space structure, and there are linear isometric embeddings `V` from each `G i` to `E`.

More concisely: A family of mutually orthogonal elements in a complete, inner product space over a field is summable if and only if the function mapping each element to the square of its norm is summable.

inner_eq_zero_symm

theorem inner_eq_zero_symm : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {x y : E}, βŸͺx, y⟫_π•œ = 0 ↔ βŸͺy, x⟫_π•œ = 0

This theorem states that for any types `π•œ` and `E`, given `π•œ` has a structure of `RCLike` (i.e., it behaves like a ring with conjugation), `E` is a normed add commutative group, and `E` is also an inner product space over `π•œ`, the inner product of two elements `x` and `y` of `E` is zero if and only if the inner product of `y` and `x` is also zero. This means the condition of zero inner product is symmetric with respect to the two elements.

More concisely: For any type `π•œ` with an `RCLike` structure and `E` a normed add commutative group and inner product space over `π•œ`, the inner product is symmetric: `βˆ€ x y : E, x β‹… y = y β‹… x`.

InnerProductSpace.Core.conj_symm

theorem InnerProductSpace.Core.conj_symm : βˆ€ {π•œ : Type u_4} {F : Type u_5} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] (self : InnerProductSpace.Core π•œ F) (x y : F), (starRingEnd π•œ) βŸͺy, x⟫_π•œ = βŸͺx, y⟫_π•œ

This theorem states that the inner product operation is *hermitian* in an inner product space, which means that taking the complex conjugate of the inner product between two vectors x and y is equal to the inner product of y and x. In other words, swapping the arguments of the inner product and taking the complex conjugate of the result gives the same answer as the original inner product. This property holds for any type `π•œ`, which is a ring like ℝ or β„‚, and any type `F`, which is a module over `π•œ`.

More concisely: The inner product is hermitian if and only if the inner product of a vector x with another vector y is equal to the complex conjugate of the inner product of y with x.

Orthonormal.inner_finsupp_eq_zero

theorem Orthonormal.inner_finsupp_eq_zero : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ {s : Set ΞΉ} {i : ΞΉ}, i βˆ‰ s β†’ βˆ€ {l : ΞΉ β†’β‚€ π•œ}, l ∈ Finsupp.supported π•œ π•œ s β†’ βŸͺ(Finsupp.total ΞΉ E π•œ v) l, v i⟫_π•œ = 0

This theorem states that for any orthonormal set of vectors `v` in an inner product space, if you construct a linear combination of some subset `s` of these vectors, then this linear combination is orthogonal (i.e., has an inner product of zero) to any vector in the orthonormal set not included in `s`. The linear combination is represented as an element `l` of the space of functions supported on `s`, and the inner product is defined over some scalar field `π•œ`. In other words, if a vector is not included in the subset used to form the linear combination, it is orthogonal to the result of the linear combination.

More concisely: For any orthonormal set of vectors `v` in an inner product space and any subset `s` of these vectors, the linear combination of vectors in `s` is orthogonal to any vector in `v` not in `s`.

norm_sub_sq_eq_norm_sq_add_norm_sq_real

theorem norm_sub_sq_eq_norm_sq_add_norm_sq_real : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {x y : F}, βŸͺx, y⟫_ℝ = 0 β†’ β€–x - yβ€– * β€–x - yβ€– = β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€–

This theorem is a variant of the Pythagorean theorem, specifically applied to the context of vector spaces with an inner product. It states that for any two vectors `x` and `y` in a normed additively commutative group (a type of vector space) that also has a real inner product space structure, if the inner product of `x` and `y` is zero, then the square of the norm (length) of the vector difference `x - y` equals the sum of the squares of the norms of `x` and `y`. This is essentially saying that in such a vector space, if two vectors are orthogonal (meaning their inner product is zero), then the Pythagorean theorem holds for the lengths of these vectors and their difference.

More concisely: In a normed additively commutative group with a real inner product space structure, if two vectors have zero inner product, then the square of the difference of their norms equals the sum of the squares of their individual norms.

Orthonormal.inner_left_right_finset

theorem Orthonormal.inner_left_right_finset : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {s : Finset ΞΉ} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ {a : ΞΉ β†’ ΞΉ β†’ π•œ}, (s.sum fun i => s.sum fun j => a i j β€’ βŸͺv j, v i⟫_π•œ) = s.sum fun k => a k k

The theorem `Orthonormal.inner_left_right_finset` postulates that for any field `π•œ`, normed add commutative group `E`, and inner product space `E` over `π•œ`, given an orthonormal sequence `v` indexed by type `ΞΉ`, and a finite set `s` of type `ΞΉ`, the double sum of the inner products of pairs of vectors from `v`, each weighted by a function `a`, is equal to the sum of the weights `a k k` for all `k` in `s`. In other words, the weighted inner products sum up to the sum of the weights over the set `s` when the vectors form an orthonormal sequence. The weights `a` are assumed to be from `π•œ`, the scalars in the inner product space.

More concisely: For any orthonormal sequence `v` over a field `π•œ` in a normed add commutative group and inner product space `E`, and any finite set `s` of indices from `π•œ`, the double sum of `a(i) ⊀ v(i) ⊀ v(j) a(j)` over `i, j` in `s` equals the sum of `a(k)Β²` over `k` in `s`.

orthonormal_subtype_range

theorem orthonormal_subtype_range : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Function.Injective v β†’ (Orthonormal π•œ Subtype.val ↔ Orthonormal π•œ v)

The theorem `orthonormal_subtype_range` states that for any types `π•œ`, `E`, and `ΞΉ`, and any function `v` mapping from `ΞΉ` to `E`, provided that `π•œ` has a real-like structure, `E` is a normed additive commutative group and an inner product space over `π•œ`, then, if `v` is an injective function, the family `v` is orthonormal if and only if the function `Subtype.val`, when applied to the range of `v`, is also orthonormal. Here, `Subtype.val` is a function that takes a subtype and returns the underlying element of the base type. An orthonormal set of vectors means that each vector has a norm of 1 and any pair of different vectors are orthogonal to each other (their inner product is equal to zero).

More concisely: For a real-like structure `π•œ`, a normed additive commutative group and inner product space `E` over `π•œ`, and an injective function `v` from `ΞΉ` to `E`, the family `{v i | i ∈ ΞΉ}` is orthonormal if and only if the family `{Subtype.val (v "" i) | i ∈ ΞΉ}` is orthonormal.

Finsupp.inner_sum

theorem Finsupp.inner_sum : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} (l : ΞΉ β†’β‚€ π•œ) (v : ΞΉ β†’ E) (x : E), βŸͺx, l.sum fun i a => a β€’ v i⟫_π•œ = l.sum fun i a => a β€’ βŸͺx, v i⟫_π•œ

This theorem, named `Finsupp.inner_sum`, states that for any type `π•œ` that behaves like a ring, a type `E` that constitutes a normed additive commutative group, and `π•œ` and `E` together forming an inner product space, the inner product of a vector `x` with the sum of scaled vectors (`a` scaled `v i`, where `a` belongs to the `Finsupp` (finite support) type `ΞΉ β†’β‚€ π•œ` and `v i` belongs to the type `ΞΉ β†’ E`) is equal to the sum of scaled inner products (`a` scaled `βŸͺx, v i⟫_π•œ`). This corresponds to the distributive property of the inner product over a finite sum.

More concisely: For any normed additive commutative group `E` over a ring `π•œ`, the inner product of a vector `x` with the finite sum of scaled vectors `Ξ± i β‹… v i` is equal to the sum of the scaled inner products `Ξ± i β‹… ⟨x, v i⟩_π•œ`.

InnerProductSpace.norm_sq_eq_inner

theorem InnerProductSpace.norm_sq_eq_inner : βˆ€ {π•œ : Type u_4} {E : Type u_5} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [self : InnerProductSpace π•œ E] (x : E), β€–xβ€– ^ 2 = RCLike.re βŸͺx, x⟫_π•œ

This theorem states that for any inner product space over a field `π•œ` that behaves like the real or complex numbers (denoted by `RCLike π•œ`) and a normed additive commutative group `E`, the square of the norm of any element `x` in `E` is equal to the real part of the inner product of `x` with itself. Essentially, it is stating that in such a space, the norm induced by the inner product satisfies the property β€–xβ€–Β² = Re⟨x, x⟩ for all `x` in `E`.

More concisely: In an inner product space over a field behaving like the real or complex numbers and a normed additive commutative group, the norm of an element squared equals the real part of its inner product with itself.

inner_eq_sum_norm_sq_div_four

theorem inner_eq_sum_norm_sq_div_four : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), βŸͺx, y⟫_π•œ = (↑‖x + yβ€– ^ 2 - ↑‖x - yβ€– ^ 2 + (↑‖x - RCLike.I β€’ yβ€– ^ 2 - ↑‖x + RCLike.I β€’ yβ€– ^ 2) * RCLike.I) / 4

This theorem, known as the Polarization Identity, relates the inner product of two vectors in an inner product space to the norms of certain linear combinations of these vectors. Specifically, for any two vectors `x` and `y` in an inner product space over a scalar field `π•œ` (with an associated structure given by `RCLike`), the inner product of `x` and `y` is equal to a quarter of the difference between the squares of the norms of `x + y` and `x - y`, plus the difference between the squares of the norms of `x - RCLike.I β€’ y` and `x + RCLike.I β€’ y`, all multiplied by the imaginary unit `RCLike.I`. In mathematical notation, this can be written as: βŸͺx, y⟫ = (β€–x + yβ€–Β² - β€–x - yβ€–Β² + (β€–x - i*yβ€–Β² - β€–x + i*yβ€–Β²) * i) / 4, where βŸͺ , ⟫ represents the inner product, β€– β€– represents the norm, `i` is the imaginary unit, and `*` represents scalar multiplication.

More concisely: The inner product of two vectors in an inner product space equals a quarter of the difference between the squared norms of their sum and difference, plus the difference between the squared norms of the vectors multiplied by the imaginary unit, all in the scalar field with `RCLike` structure.

norm_sub_pow_two_real

theorem norm_sub_pow_two_real : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), β€–x - yβ€– ^ 2 = β€–xβ€– ^ 2 - 2 * βŸͺx, y⟫_ℝ + β€–yβ€– ^ 2

The theorem `norm_sub_pow_two_real` states that for any two elements `x` and `y` from a real Inner Product Space `F`, the square of the norm of their difference equals to the square of the norm of `x` minus twice the inner product of `x` and `y`, plus the square of the norm of `y`. In mathematical terminology, this theorem states that β€–x - yβ€–Β² = β€–xβ€–Β² - 2 * βŸͺx, y⟫ + β€–yβ€–Β² for any x,y ∈ F.

More concisely: The square of the norm of the difference between two elements in a real Inner Product Space equals the sum of the differences of their squared norms and twice their inner product.

real_inner_self_eq_norm_sq

theorem real_inner_self_eq_norm_sq : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x : F), βŸͺx, x⟫_ℝ = β€–xβ€– ^ 2 := by sorry

This theorem states that for every element `x` in an inner product space `F` over the real numbers, the inner product of `x` with itself (`βŸͺx, x⟫_ℝ`) is equal to the square of the norm of `x` (`β€–xβ€– ^ 2`). In other words, it represents the Pythagorean theorem in the context of real inner product spaces: the square of the length of a vector is equal to the square of its components summed together.

More concisely: For every element `x` in a real inner product space, the inner product of `x` with itself equals the square of its norm: `βŸͺx, x⟫_ℝ = β€–xβ€– ^ 2`.

parallelogram_law_with_norm

theorem parallelogram_law_with_norm : βˆ€ (π•œ : Type u_1) {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst : InnerProductSpace π•œ E] (x y : E), β€–x + yβ€– * β€–x + yβ€– + β€–x - yβ€– * β€–x - yβ€– = 2 * (β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€–)

This theorem states the parallelogram law with respect to the norm in the context of an inner product space. Given any type π•œ that operates like the real or complex numbers, and any normed additive commutative group E that also forms an inner product space with π•œ, the theorem states that for any two elements x and y in E, the sum of the squared norms of x+y and x-y is equal to twice the sum of the squared norms of x and y. In mathematical notation, β€–x + yβ€–Β² + β€–x - yβ€–Β² = 2 * (β€–xβ€–Β² + β€–yβ€–Β²).

More concisely: In an inner product space E over normed field π•œ, the norm of the sum (difference) of two vectors x and y is equal to the norm of x plus (minus) the norm of y, added (subtracted) twice: β€–x + yβ€–Β² = β€–xβ€–Β² + β€–yβ€–Β² Β± 2β€–xβ€–β€–yβ€–.

norm_inner_eq_norm_iff

theorem norm_inner_eq_norm_iff : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {x y : E}, x β‰  0 β†’ y β‰  0 β†’ (β€–βŸͺx, y⟫_π•œβ€– = β€–xβ€– * β€–yβ€– ↔ βˆƒ r, r β‰  0 ∧ y = r β€’ x)

This theorem states that for any non-zero vectors `x` and `y` in an inner product space over a scalar field `π•œ` with a normed add commutative group `E`, if the norm of their inner product equals the product of their norms, then there exists a non-zero scalar `r` such that `y` is a scalar multiple of `x`. This is a special case of the equality condition for the Cauchy-Schwarz inequality.

More concisely: If two non-zero vectors `x` and `y` in an inner product space satisfy `∣∣x · y∣∣ = ∣∣x∣∣ * ∣∣y∣∣, then `y` is a scalar multiple of `x`.

inner_add_add_self

theorem inner_add_add_self : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), βŸͺx + y, x + y⟫_π•œ = βŸͺx, x⟫_π•œ + βŸͺx, y⟫_π•œ + βŸͺy, x⟫_π•œ + βŸͺy, y⟫_π•œ

The theorem `inner_add_add_self` states that for any type π•œ that behaves like a ring (annotated as `RCLike π•œ`) and any normed, commutative add group E (annotated as `NormedAddCommGroup E`) that forms an inner product space with π•œ (annotated as `InnerProductSpace π•œ E`), for any two elements x and y of E, the inner product of the sum of x and y with itself (notated as `βŸͺx + y, x + y⟫_π•œ`) equals the sum of the inner products of x with itself, x with y, y with x, and y with itself (notated as `βŸͺx, x⟫_π•œ + βŸͺx, y⟫_π•œ + βŸͺy, x⟫_π•œ + βŸͺy, y⟫_π•œ`).

More concisely: For any normed, commutative add group E that is an inner product space over a ring π•œ, the inner product of the sum of two elements x and y equals the sum of their inner products. That is, βŸͺx + y, x + y⟫ = βŸͺx, x⟫ + βŸͺx, y⟫ + βŸͺy, x⟫ + βŸͺy, y⟫.

Orthonormal.inner_right_sum

theorem Orthonormal.inner_right_sum : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (l : ΞΉ β†’ π•œ) {s : Finset ΞΉ} {i : ΞΉ}, i ∈ s β†’ βŸͺv i, s.sum fun i => l i β€’ v i⟫_π•œ = l i

This theorem states that, given an orthonormal set of vectors within an inner product space, the inner product of a linear combination of a subset of these vectors with one of those vectors will yield the coefficient of that particular vector in the linear combination. In other words, if you have a set of orthonormal vectors, and you form a linear combination of a subset of these vectors, the inner product of this linear combination with one of the vectors in the subset will give you the coefficient of that vector in the linear combination. This property is often used in the context of Fourier Series or Quantum Mechanics, where an orthonormal basis is used to represent elements in an inner product space.

More concisely: Given an orthonormal set of vectors in an inner product space, the inner product of a linear combination of some vectors in the set with one of those vectors equals the coefficient of that vector in the linear combination.

real_inner_smul_left

theorem real_inner_smul_left : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F) (r : ℝ), βŸͺr β€’ x, y⟫_ℝ = r * βŸͺx, y⟫_ℝ

This theorem states that for any real number `r` and any two elements `x` and `y` from an inner product space over the real numbers (`ℝ`), the inner product of `r` scaled by `x` and `y` is equal to `r` multiplied by the inner product of `x` and `y`. In other words, scaling one of the vectors in the inner product by a real number is the same as scaling the result of the inner product by that number. This is a property of the distributivity of scalar multiplication over the inner product in real inner product spaces.

More concisely: For any real number r and elements x, y of an inner product space over the real numbers, r <⟩x,y⟩ = ⟨x, yβŸ©β€‰β‹…β€‰r, where  <⟩denotes the inner product.

norm_add_sq_eq_norm_sq_add_norm_sq_iff_real_inner_eq_zero

theorem norm_add_sq_eq_norm_sq_add_norm_sq_iff_real_inner_eq_zero : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), β€–x + yβ€– * β€–x + yβ€– = β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€– ↔ βŸͺx, y⟫_ℝ = 0

This theorem is a variant of the Pythagorean theorem in the context of inner product spaces over the real numbers. Specifically, it states that for any two vectors `x` and `y` in a normed additively commutative group that also forms an inner product space over the real numbers, the squared norm of the sum of `x` and `y` equals the sum of the squared norms of `x` and `y` if and only if the real inner product of `x` and `y` is zero. In other words, the vectors `x` and `y` are orthogonal (perpendicular) if and only if the Pythagorean relation holds for their norms.

More concisely: In a real inner product space, two vectors are orthogonal if and only if the sum of their squared norms equals the square of the norm of their sum.

norm_inner_div_norm_mul_norm_eq_one_of_ne_zero_of_ne_zero_mul

theorem norm_inner_div_norm_mul_norm_eq_one_of_ne_zero_of_ne_zero_mul : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {x : E} {r : π•œ}, x β‰  0 β†’ r β‰  0 β†’ β€–βŸͺx, r β€’ x⟫_π•œβ€– / (β€–xβ€– * β€–r β€’ xβ€–) = 1

The theorem `norm_inner_div_norm_mul_norm_eq_one_of_ne_zero_of_ne_zero_mul` states that for any non-zero vector `x` and any non-zero scalar `r` in an inner product space over a ring `π•œ`, the absolute value of the inner product of `x` and the scaled vector `r β€’ x`, divided by the product of their norms, is always 1. In mathematical terms, this can be written as: if `x β‰  0` and `r β‰  0`, then `|βŸͺx, r β€’ x⟫_π•œ| / (β€–xβ€– * β€–r β€’ xβ€–) = 1`.

More concisely: For any non-zero vector `x` and non-zero scalar `r` in an inner product space over a ring, the quotient of the inner product of `x` and `r β€’ x` by the product of their norms equals 1. That is, `|βŸͺx, r β€’ x⟫_π•œ| / (β€–xβ€– * β€–r β€’ xβ€–) = 1`.

norm_sub_eq_norm_add

theorem norm_sub_eq_norm_add : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {v w : E}, βŸͺv, w⟫_π•œ = 0 β†’ β€–w - vβ€– = β€–w + vβ€–

This theorem states that for any two orthogonal vectors `v` and `w` in an inner product space over a scalar field `π•œ`, the norm (or magnitude) of their difference (`w - v`) is equal to the norm of their sum (`w + v`). Orthogonal vectors here mean those vectors whose inner product is zero (`βŸͺv, w⟫_π•œ = 0`). The theorem is valid under the assumptions that `π•œ` behaves like a real or complex number field (`RCLike π•œ`) and `E` forms a normed additive commutative group (`NormedAddCommGroup E`).

More concisely: In an inner product space over a real or complex number field, the norm of the difference between two orthogonal vectors is equal to the norm of their sum.

inner_self_eq_norm_sq_to_K

theorem inner_self_eq_norm_sq_to_K : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x : E), βŸͺx, x⟫_π•œ = ↑‖xβ€– ^ 2

This theorem states that for any type `π•œ` which is of type `RCLike`, for another type `E` which is a normed additive commutative group and an inner product space over `π•œ`, the inner product of any element `x` of `E` with itself (denoted as `βŸͺx, x⟫_π•œ`) is equal to the square of the norm of `x` (denoted as `β€–xβ€–^2`). In other words, in the context of inner product spaces, the inner product of a vector with itself equals the square of its norm.

More concisely: For any normed additive commutative group and inner product space `E` over a `RCLike` type `π•œ`, the inner product of any `x` in `E` with itself equals the square of its norm: `βŸͺx, x⟫_π•œ = β€–xβ€–^2`.

InnerProductSpace.smul_left

theorem InnerProductSpace.smul_left : βˆ€ {π•œ : Type u_4} {E : Type u_5} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [self : InnerProductSpace π•œ E] (x y : E) (r : π•œ), βŸͺr β€’ x, y⟫_π•œ = (starRingEnd π•œ) r * βŸͺx, y⟫_π•œ

The theorem `InnerProductSpace.smul_left` states that for any types `π•œ` and `E`, with `π•œ` being a ring that supports the conjugate operation and `E` being a normed commutative additive group that forms an inner product space over `π•œ`, the inner product of the scalar multiplication of a vector `x` by a scalar `r` and another vector `y` is equal to the product of the conjugate of `r` and the inner product of `x` and `y`. In mathematical notation, this could be written as for all `x`, `y` in `E` and `r` in `π•œ`, we have `βŸͺr β€’ x, y⟫_π•œ = (starRingEnd π•œ) r * βŸͺx, y⟫_π•œ`.

More concisely: For any inner product space `E` over a conjugate-compatible ring `π•œ`, the inner product of the scalar multiplication of a vector by a conjugate-preserving scalar and another vector equals the product of the conjugate of the scalar and the inner product of the vectors.

Orthonormal.sum_inner_products_le

theorem Orthonormal.sum_inner_products_le : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} (x : E) {v : ΞΉ β†’ E} {s : Finset ΞΉ}, Orthonormal π•œ v β†’ (s.sum fun i => β€–βŸͺv i, x⟫_π•œβ€– ^ 2) ≀ β€–xβ€– ^ 2

The theorem `Orthonormal.sum_inner_products_le` is a statement of Bessel's inequality for finite sums. For a given type `π•œ`, a normed additive commutative group `E`, and an inner product space over `π•œ` and `E`, it asserts that for any element `x` of `E`, any function `v` from an index set `ΞΉ` to `E`, and any finite subset `s` of `ΞΉ`, if `v` forms an orthonormal set, then the sum over `s` of the squared norms of the inner products of `v i` with `x` is less than or equal to the square of the norm of `x`. In mathematical terms, if $(v_i)_{i \in I}$ is an orthonormal system in `E`, then for any `x` in `E`, we have $\sum_{i \in s} \|\langle v_i, x \rangle\|^2 \leq \|x\|^2$ for any finite subset `s` of `I`.

More concisely: For any orthonormal system $(v\_i)\_i$ in a normed inner product space and any finite subset $s$ of its index set, the sum of the squares of the inner products of elements from the system with any vector in the space is less than or equal to the square of the norm of that vector, i.e., $\sum\_{i \in s} \|\langle v\_i, x \rangle\|^2 \leq \|x\|^2$.

norm_sub_pow_two

theorem norm_sub_pow_two : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), β€–x - yβ€– ^ 2 = β€–xβ€– ^ 2 - 2 * RCLike.re βŸͺx, y⟫_π•œ + β€–yβ€– ^ 2

This theorem, named `norm_sub_pow_two`, is an alias of another theorem called `norm_sub_sq`. The theorem describes an identity in the context of inner product spaces. Given any field `π•œ` satisfying the `RCLike` structure (essentially having a real component extraction function), a normed add commutative group `E`, and an inner product space built over `π•œ` and `E`, for any two elements `x` and `y` of `E`, the square of the norm of the difference of `x` and `y` equals the square of the norm of `x` minus twice the real component of the inner product of `x` and `y`, plus the square of the norm of `y`. Mathematically, it can be written as β€–x - yβ€–Β² = β€–xβ€–Β² - 2 * Re(βŸͺx, y⟫) + β€–yβ€–Β².

More concisely: The square of the norm of the difference between two elements in an inner product space equals the sum of the squares of their individual norms minus twice the real part of their inner product.

Orthonormal.inner_finsupp_eq_sum_right

theorem Orthonormal.inner_finsupp_eq_sum_right : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (l₁ lβ‚‚ : ΞΉ β†’β‚€ π•œ), βŸͺ(Finsupp.total ΞΉ E π•œ v) l₁, (Finsupp.total ΞΉ E π•œ v) lβ‚‚βŸ«_π•œ = lβ‚‚.sum fun i y => (starRingEnd π•œ) (l₁ i) * y

The theorem `Orthonormal.inner_finsupp_eq_sum_right` states that for any field `π•œ`, any normed add commutative group `E`, provided `E` is an inner product space over the field `π•œ`, for any type `ΞΉ` and any function `v` from `ΞΉ` to `E`, if `v` constitutes an orthonormal set of vectors, then for any two linear combinations `l₁` and `lβ‚‚` of vectors from this orthonormal set (expressed as `Finsupp`), the inner product of these two linear combinations is equal to the sum over the second `Finsupp` `lβ‚‚`, where each term in the sum is the product of the complex conjugate of the coefficient in `l₁` for a particular index `i`, and the coefficient in `lβ‚‚` for the same index `i`.

More concisely: For any inner product space `E` over a field `π•œ` and orthonormal set `v` of vectors in `E`, the inner product of their corresponding `Finsupp` linear combinations is equal to the sum of the products of the complex conjugates of their coefficients and the coefficients of the second linear combination for identical indices.

real_inner_eq_norm_add_mul_self_sub_norm_mul_self_sub_norm_mul_self_div_two

theorem real_inner_eq_norm_add_mul_self_sub_norm_mul_self_sub_norm_mul_self_div_two : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), βŸͺx, y⟫_ℝ = (β€–x + yβ€– * β€–x + yβ€– - β€–xβ€– * β€–xβ€– - β€–yβ€– * β€–yβ€–) / 2

This is the Polarization Identity theorem, which describes the real inner product in terms of the norm. For any two vectors `x` and `y` in an inner product space over the real numbers, the inner product of `x` and `y` is equal to one-half the difference between the square of the norm of the sum of `x` and `y` and the sum of the squares of the norms of `x` and `y`. Symbolically, this is expressed as: `βŸͺx, y⟫_ℝ = (β€–x + yβ€–Β² - β€–xβ€–Β² - β€–yβ€–Β²) / 2`.

More concisely: The real inner product of two vectors x and y is equal to half the difference between the squared norms of their sum and the sum of their squared norms: βŸͺx, y⟫\_ℝ = (β€–x + yβ€–Β² - β€–xβ€–Β² - β€–yβ€–Β²) / 2.

inner_sum

theorem inner_sum : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} (s : Finset ΞΉ) (f : ΞΉ β†’ E) (x : E), βŸͺx, s.sum fun i => f i⟫_π•œ = s.sum fun i => βŸͺx, f i⟫_π•œ

This theorem, called `inner_sum`, states that for any scalar field `π•œ`, any normed additive commutative group `E` equipped with an inner product space over `π•œ`, any finite set `s` indexed by `ΞΉ`, any function `f` from `ΞΉ` to `E`, and any element `x` from `E`, the inner product of `x` and the sum of the elements in `s` mapped by `f` is equal to the sum of the inner products of `x` and each element in `s` mapped by `f`. In mathematical notation, this would be expressed as βŸͺx, βˆ‘ f(i)⟫ = βˆ‘ βŸͺx, f(i)⟫ for all `i` in `s`.

More concisely: For any scalar field π•œ, normed additive commutative group E with an inner product over π•œ, any finite indexed set (ΞΉ, s), function f : ΞΉ β†’ E, and element x in E, βŸͺx, βˆ‘ f(i)⟫ = βˆ‘ βŸͺx, f(i)⟫.

InnerProductSpace.Core.definite

theorem InnerProductSpace.Core.definite : βˆ€ {π•œ : Type u_4} {F : Type u_5} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] (self : InnerProductSpace.Core π•œ F) (x : F), βŸͺx, x⟫_π•œ = 0 β†’ x = 0

This theorem states that the inner product in an inner product space is positive definite. In particular, for any field `π•œ` and any type `F` that forms a module over `π•œ` and an additive commutative group, if `x` is an element of `F`, and the inner product of `x` with itself (denoted by βŸͺx, x⟫_π•œ) equals zero, then `x` must be the zero element of `F`. This is a fundamental property of inner product spaces in linear algebra.

More concisely: In an inner product space over a field, the inner product of an element with itself is positive definite, that is, equal to zero implies the element is the zero element.

Continuous.inner

theorem Continuous.inner : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {Ξ± : Type u_4} [inst_3 : TopologicalSpace Ξ±] {f g : Ξ± β†’ E}, Continuous f β†’ Continuous g β†’ Continuous fun t => βŸͺf t, g t⟫_π•œ

This theorem states that for any field `π•œ` that behaves like real or complex numbers, and any normed add commutative group `E` that is also an inner product space over `π•œ`, if `f` and `g` are two continuous functions from a topological space `Ξ±` to `E`, then the function that maps any element `t` of `Ξ±` to the inner product of `f(t)` and `g(t)` in `π•œ` is also continuous.

More concisely: For any continuous functions $f$ and $g$ from a topological space $\alpha$ to an inner product space $E$ over a field $\mathbb{F}$ that is also a normed additive commutative group, the function mapping $t \mapsto \langle f(t), g(t) \rangle_{\mathbb{F}}$ is continuous.

Orthonormal.inner_products_summable

theorem Orthonormal.inner_products_summable : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} (x : E) {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ Summable fun i => β€–βŸͺv i, x⟫_π•œβ€– ^ 2

The theorem `Orthonormal.inner_products_summable` states that for any field `π•œ`, a normed add commutative group `E`, an inner product space of `π•œ` and `E`, and an arbitrary type `ΞΉ`, for any vector `x` in `E` and any function `v` that maps from `ΞΉ` to `E`, if `v` forms an orthonormal set (which means every vector `v i` has norm 1 and any pair of different vectors `v i` and `v j` are orthogonal), then the sequence of the square of the norms of the inner product of `v i` and `x` is summable. In other words, the infinite sum of squared lengths of the projections of `x` onto each vector in the orthonormal set `v` will converge to a finite number.

More concisely: For any orthonormal set {vi : ΞΉ β†’ E} in an inner product space (E, βŒˆΒ·βŒ‰) over a field π•œ, the series βˆ‘ i ∈ ΞΉ ||⌈x, vi iβŒ‰|Β² converges for any x ∈ E.

inner_zero_left

theorem inner_zero_left : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x : E), βŸͺ0, x⟫_π•œ = 0

This theorem, `inner_zero_left`, states that for any scalar type `π•œ` and any normed add commutative group `E` with an inner product space over `π•œ`, the inner product of the zero vector and any vector `x` in `E` is always zero. This is a fundamental property of inner product spaces, essentially stating that the zero vector is orthogonal to all other vectors.

More concisely: For any inner product space `(E, ⟨·, ·⟩)` over commutative scalar type `π•œ`, ⟨0, x⟩ = 0 for all `x ∈ E`.

inner_self_nonneg

theorem inner_self_nonneg : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {x : E}, 0 ≀ RCLike.re βŸͺx, x⟫_π•œ

This theorem, named `inner_self_nonneg`, states that for any type `π•œ` that has an `RCLike` structure, and for any `E`, a normed additive commutative group which also forms an inner product space over `π•œ`, the inner product of any element `x` of `E` with itself is always non-negative. Here, `RCLike.re` is a function that maps an element of type `π•œ` to the real number line ℝ. In mathematical terms, the theorem says that for any `x` in `E`, the real component of the inner product of `x` with itself (i.e., ⟨x, x⟩_π•œ) is equal to or greater than 0.

More concisely: For any normed additive commutative group `E` over a type `π•œ` with an `RCLike` structure, the inner product of any element `x` in `E` with itself is non-negative (i.e., ⟨x, x⟩_π•œ β‰₯ 0).

abs_real_inner_div_norm_mul_norm_eq_one_of_ne_zero_of_ne_zero_mul

theorem abs_real_inner_div_norm_mul_norm_eq_one_of_ne_zero_of_ne_zero_mul : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {x : F} {r : ℝ}, x β‰  0 β†’ r β‰  0 β†’ |βŸͺx, r β€’ x⟫_ℝ| / (β€–xβ€– * β€–r β€’ xβ€–) = 1

The theorem states that for any non-zero vector 'x' and any non-zero real number 'r' in a real inner product space, the absolute value of the inner product of the vector with a non-zero multiple of itself, divided by the product of their norms, is always 1. Here, the norm (β€–xβ€–) of a vector 'x' is its length or magnitude, the scalar multiple (r β€’ x) denotes the vector that results from scaling 'x' by factor 'r', and the inner product (βŸͺx, r β€’ x⟫_ℝ) represents the dot product of 'x' and its scaled version.

More concisely: For any non-zero vector x and real number r in a real inner product space, the magnitude of their inner product divided by the product of their norms equals 1. (|βŸͺx, r β€’ x⟫_ℝ| / (β€–xβ€– * β€–r β€’ xβ€–) = 1)

Orthonormal.comp

theorem Orthonormal.comp : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {ΞΉ' : Type u_5} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (f : ΞΉ' β†’ ΞΉ), Function.Injective f β†’ Orthonormal π•œ (v ∘ f)

The theorem `Orthonormal.comp` states that given an orthonormal family of vectors in an inner product space (which is a set of vectors where each vector has a norm of 1 and any pair of vectors is orthogonal), if we obtain a subfamily of this orthonormal family by composing it with an injective function (a function that doesn't map different inputs to the same output), this subfamily is also an orthonormal family. In other words, selecting vectors from an orthonormal family without repetition (which is ensured by the injectivity of the function) preserves the orthonormal property.

More concisely: If `f` is an injective function from an orthonormal family of vectors in an inner product space to itself, then the image of this function is an orthonormal family.

norm_sub_sq_eq_norm_sq_add_norm_sq_iff_real_inner_eq_zero

theorem norm_sub_sq_eq_norm_sq_add_norm_sq_iff_real_inner_eq_zero : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), β€–x - yβ€– * β€–x - yβ€– = β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€– ↔ βŸͺx, y⟫_ℝ = 0

This is a generalization of the Pythagorean theorem to the realm of real inner product spaces. It states that for any two vectors 'x' and 'y' in a real inner product space F, the square of the norm of the vector obtained by subtracting 'y' from 'x' equals the sum of the squares of the norms of 'x' and 'y' if and only if the real inner product of 'x' and 'y' is zero. In other words, 'x' and 'y' are orthogonal (the angle between them is 90 degrees) if and only if the squared length of the difference vector equals the sum of the squared lengths of the original vectors.

More concisely: In a real inner product space, two vectors are orthogonal if and only if the square of the norm of their difference is equal to the sum of the squares of their norms.

norm_sub_sq

theorem norm_sub_sq : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), β€–x - yβ€– ^ 2 = β€–xβ€– ^ 2 - 2 * RCLike.re βŸͺx, y⟫_π•œ + β€–yβ€– ^ 2

The theorem `norm_sub_sq` states that for any type `π•œ` that is a real-coefficient-like structure (`RCLike`) and any normed add commutative group `E` that is also an inner product space over `π•œ`, the squared norm (essentially the length squared) of the difference between two elements `x` and `y` of `E` is equal to the squared norm of `x` minus twice the real part of the inner product of `x` and `y` over `π•œ`, plus the squared norm of `y`. This can be seen as a variant of the Pythagorean theorem in an inner product space.

More concisely: For any RCLike structure `π•œ` and inner product space `E` over `π•œ`, the squared norm of `x - y` in `E` equals the squared norm of `x` minus twice the inner product of `x` and `y` over `π•œ` plus the squared norm of `y`.

inner_map_polarization

theorem inner_map_polarization : βˆ€ {V : Type u_4} [inst : NormedAddCommGroup V] [inst_1 : InnerProductSpace β„‚ V] (T : V β†’β‚—[β„‚] V) (x y : V), βŸͺT y, x⟫_β„‚ = (βŸͺT (x + y), x + y⟫_β„‚ - βŸͺT (x - y), x - y⟫_β„‚ + Complex.I * βŸͺT (x + Complex.I β€’ y), x + Complex.I β€’ y⟫_β„‚ - Complex.I * βŸͺT (x - Complex.I β€’ y), x - Complex.I β€’ y⟫_β„‚) / 4

The theorem `inner_map_polarization` is a complex polarization identity involving a linear map. This theorem states that for any normed additively commutative group `V` that also forms an inner product space over the complex numbers, and for any linear map `T` from `V` to `V`, and for any vectors `x` and `y` in `V`, the inner product of `T y` and `x` is equal to the expression `(βŸͺT (x + y), x + y⟫_β„‚ - βŸͺT (x - y), x - y⟫_β„‚ + Complex.I * βŸͺT (x + Complex.I β€’ y), x + Complex.I β€’ y⟫_β„‚ - Complex.I * βŸͺT (x - Complex.I β€’ y), x - Complex.I β€’ y⟫_β„‚) / 4`. Here, `Complex.I` denotes the imaginary unit, `β€’` denotes scalar multiplication, and `βŸͺ_ , _⟫_β„‚` denotes the inner product in the complex inner product space.

More concisely: For any linear map T between two complex inner product spaces V, and vectors x and y in V, the inner product of T(y) and x equals the complex expression (β€–T(x + y)β€–\_β„‚^2 + β€–T(x - y)β€–\_β„‚^2 + i*(β€–T(x + iy)β€–\_β„‚^2 - β€–T(x - iy)β€–\_β„‚^2)/2, where i is the imaginary unit.

InnerProductSpace.Core.inner_zero_left

theorem InnerProductSpace.Core.inner_zero_left : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] (x : F), βŸͺ0, x⟫_π•œ = 0

This theorem, `InnerProductSpace.Core.inner_zero_left`, states that for any type `π•œ` that behaves like a real or complex number (indicated by `RCLike π•œ`), and any type `F` that is an additive commutative group and a module over `π•œ` (indicated by `AddCommGroup F` and `Module π•œ F`), if we have an inner product space defined on `π•œ` and `F` (indicated by `InnerProductSpace.Core π•œ F`), then the inner product of the zero vector and any vector `x` in this space is zero. In mathematical terms, this is expressing the property that inner product of zero vector with any vector is zero: ⟨0, x⟩ = 0.

More concisely: For any type `π•œ` behaving like a real or complex number, any additive commutative group and `π•œ`-module `F` with an inner product structure, the inner product of the zero vector and any vector in `F` is zero.

InnerProductSpace.Core.cauchy_schwarz_aux

theorem InnerProductSpace.Core.cauchy_schwarz_aux : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] (x y : F), InnerProductSpace.Core.normSq (βŸͺx, y⟫_π•œ β€’ x - βŸͺx, x⟫_π•œ β€’ y) = InnerProductSpace.Core.normSq x * (InnerProductSpace.Core.normSq x * InnerProductSpace.Core.normSq y - β€–βŸͺx, y⟫_π•œβ€– ^ 2)

This theorem provides a crucial equality used in the proof of the Cauchy-Schwarz inequality in the context of an Inner Product Space. Specifically, it states that for any two elements `x` and `y` from an Inner Product Space over a scalar field `π•œ`, the square of the norm of the difference between the inner product of `x` and `y` scaled by `x` and the inner product of `x` with itself scaled by `y` is equal to the product of the squares of the norms of `x` and `y` minus the square of the norm of the inner product of `x` and `y`. This norm square is computed using the `InnerProductSpace.Core.normSq` function, which returns the real part of the inner product of an element with itself. The theorem avoids the use of squared norms directly to prevent extra rewrites when applying to an inner product space.

More concisely: For any two elements `x` and `y` in an Inner Product Space, the square of the dot product of their difference and the scaled versions of themselves is equal to the difference of the squares of their norms.

real_inner_smul_self_right

theorem real_inner_smul_self_right : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x : F) (r : ℝ), βŸͺx, r β€’ x⟫_ℝ = r * (β€–xβ€– * β€–xβ€–)

This theorem states that the real inner product of a vector with a scaled version of itself, in a real inner product space, is equal to the scale factor times the square of the norm of the vector. Specifically, for any vector `x` in a normed additively commutative group `F` that also forms a real inner product space, and any real number `r`, the real inner product of `x` and `r` scaled `x` is equal to `r` times the square of the norm of `x`.

More concisely: For any vector `x` in a real inner product space `F` and real number `r`, the real inner product of `x` and `r` times `x` equals `r` times the square of the norm of `x`.

UniformSpace.Completion.inner_coe

theorem UniformSpace.Completion.inner_coe : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (a b : E), βŸͺ↑E a, ↑E b⟫_π•œ = βŸͺa, b⟫_π•œ

This theorem, `UniformSpace.Completion.inner_coe`, states that for any types `π•œ` and `E`, where `π•œ` is a ring and `E` is a normed-additive-commutative-group with an inner product space over `π•œ`, the inner product of the completion of `E` with respect to `π•œ` of any two elements `a` and `b` of `E` is the same as the inner product of `a` and `b` in the original inner product space `E` over `π•œ`. In simpler terms, taking the completion of an inner product space doesn't change the inner products of the original elements.

More concisely: For any normed-additive-commutative `ℝ`-module `E` over a ring `ℝ` with an inner product and completion `β„±`, the inner product of `β„±` of any two elements from `E` is equal to their inner product in `E`.

OrthogonalFamily.comp

theorem OrthogonalFamily.comp : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {G : ΞΉ β†’ Type u_5} [inst_3 : (i : ΞΉ) β†’ NormedAddCommGroup (G i)] [inst_4 : (i : ΞΉ) β†’ InnerProductSpace π•œ (G i)] {V : (i : ΞΉ) β†’ G i β†’β‚—α΅’[π•œ] E}, OrthogonalFamily π•œ G V β†’ βˆ€ {Ξ³ : Type u_6} {f : Ξ³ β†’ ΞΉ}, Function.Injective f β†’ OrthogonalFamily π•œ (fun g => G (f g)) fun g => V (f g)

This theorem states that if we have an orthogonal family of subspaces `G` of a normed additive commutative group `E` over a scalar field `π•œ`, then the composition of this orthogonal family with any injective function `f` results in another orthogonal family. Here, orthogonality is defined with respect to the inner product space structure of `E`. The injective function `f` here acts as a mapping from some type `Ξ³` to the index set `ΞΉ` of the original orthogonal family. In short, the theorem states that the orthogonality property is preserved under injective mappings in the index set.

More concisely: If `G` is an orthogonal family of subspaces of the inner product space `E`, then the composition of `G` with an injective function `f` results in another orthogonal family.

abs_real_inner_div_norm_mul_norm_eq_one_iff

theorem abs_real_inner_div_norm_mul_norm_eq_one_iff : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), |βŸͺx, y⟫_ℝ / (β€–xβ€– * β€–yβ€–)| = 1 ↔ x β‰  0 ∧ βˆƒ r, r β‰  0 ∧ y = r β€’ x

The theorem `abs_real_inner_div_norm_mul_norm_eq_one_iff` states that for any two vectors `x` and `y` in a real inner product space, the absolute value of their inner product divided by the product of their norms equals 1 if and only if both vectors are non-zero and there exists a non-zero scalar `r` such that `y` is the scalar multiplication of `r` with `x`. This theorem represents a specific case of equality for the Cauchy-Schwarz inequality.

More concisely: For any non-zero vectors x and y in a real inner product space, the absolute value of their inner product equals the product of their norms and 1 if and only if y is a scalar multiple of x.

isBoundedBilinearMap_inner

theorem isBoundedBilinearMap_inner : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] [inst_3 : NormedSpace ℝ E], IsBoundedBilinearMap ℝ fun p => βŸͺp.1, p.2⟫_π•œ

This theorem states that for any inner product space `E` over a field `π•œ` which is equipped with a structure of real normed space, the inner product operation is a bounded bilinear map. Bilinearity here means that the inner product operation is linear in each of its two arguments, and boundedness means that there is a real number such that the inner product of any two elements of `E` doesn't exceed this number. These properties are fundamental in functional analysis and are used in many contexts such as the study of operators on Hilbert spaces.

More concisely: In an inner product space over a real field with a real norm, the inner product is a bounded, bilinear map.

norm_sub_mul_self_real

theorem norm_sub_mul_self_real : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), β€–x - yβ€– * β€–x - yβ€– = β€–xβ€– * β€–xβ€– - 2 * βŸͺx, y⟫_ℝ + β€–yβ€– * β€–yβ€–

This theorem states that for any two elements `x` and `y` of a real inner product space `F`, the square of the norm of their difference is equal to the square of the norm of `x`, minus twice the inner product of `x` and `y`, plus the square of the norm of `y`. This is essentially the expansion of the square of the length of the difference of two vectors in terms of the lengths of the vectors and their inner product.

More concisely: The square of the norm of the difference of two elements in a real inner product space is equal to the sum of the differences of their squared norms and twice their inner product.

inner_sum_smul_sum_smul_of_sum_eq_zero

theorem inner_sum_smul_sum_smul_of_sum_eq_zero : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {ι₁ : Type u_4} {s₁ : Finset ι₁} {w₁ : ι₁ β†’ ℝ} (v₁ : ι₁ β†’ F), (s₁.sum fun i => w₁ i) = 0 β†’ βˆ€ {ΞΉβ‚‚ : Type u_5} {sβ‚‚ : Finset ΞΉβ‚‚} {wβ‚‚ : ΞΉβ‚‚ β†’ ℝ} (vβ‚‚ : ΞΉβ‚‚ β†’ F), (sβ‚‚.sum fun i => wβ‚‚ i) = 0 β†’ βŸͺs₁.sum fun i₁ => w₁ i₁ β€’ v₁ i₁, sβ‚‚.sum fun iβ‚‚ => wβ‚‚ iβ‚‚ β€’ vβ‚‚ iβ‚‚βŸ«_ℝ = (-s₁.sum fun i₁ => sβ‚‚.sum fun iβ‚‚ => w₁ i₁ * wβ‚‚ iβ‚‚ * (β€–v₁ i₁ - vβ‚‚ iβ‚‚β€– * β€–v₁ i₁ - vβ‚‚ iβ‚‚β€–)) / 2

This theorem states that for any normed additive commutative group `F` with an inner product space over the real numbers, given two finite sets `s₁` and `sβ‚‚` each associated with a real-valued weighting function (`w₁` and `wβ‚‚` respectively) and a function mapping to `F` (`v₁` and `vβ‚‚` respectively), if the sums of the weights in each set equal to zero, then the inner product of the weighted sums of the functions `v₁` and `vβ‚‚` is equal to half the negative sum over `s₁` and `sβ‚‚` of the product of the weights and the squared norm of the difference between the corresponding elements of `v₁` and `vβ‚‚`.

More concisely: For any normed additive commutative group `F` with an inner product space over the real numbers, if `w₁, wβ‚‚:` Fin Set -> Real, `v₁, vβ‚‚:` F -> F, and `s₁, sβ‚‚` are finite sets such that `βˆ‘ x ∈ s₁ w₁ x = βˆ‘ x ∈ sβ‚‚ wβ‚‚ x = 0`, then `∫ x ∈ s₁ w₁ x . (v₁ x - vβ‚‚ x)⁒(v₁ x - vβ‚‚ x) dxdx = -1/2 βˆ‘ x ∈ s₁ w₁ x ||v₁ x - vβ‚‚ x||Β²`.

UniformSpace.Completion.Continuous.inner

theorem UniformSpace.Completion.Continuous.inner : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {Ξ± : Type u_4} [inst_3 : TopologicalSpace Ξ±] {f g : Ξ± β†’ UniformSpace.Completion E}, Continuous f β†’ Continuous g β†’ Continuous fun x => βŸͺf x, g x⟫_π•œ

This theorem states that for any type `π•œ`, any type `E` which is a normed additive commutative group and an inner product space over `π•œ`, and any type `Ξ±` which is a topological space, if we have two functions `f` and `g` from `Ξ±` to the Hausdorff completion of `E`, then if `f` and `g` are continuous, the function that maps any `x` in `Ξ±` to the inner product of `f(x)` and `g(x)` in `π•œ` is also continuous.

More concisely: Given a normed additive commutative group and inner product space `E` over a type `π•œ`, two continuous functions `f` and `g` from a topological space `Ξ±` to the Hausdorff completion of `E`, the function that maps `x` to the inner product of `f(x)` and `g(x)` is also continuous.

inner_map_self_eq_zero

theorem inner_map_self_eq_zero : βˆ€ {V : Type u_4} [inst : NormedAddCommGroup V] [inst_1 : InnerProductSpace β„‚ V] (T : V β†’β‚—[β„‚] V), (βˆ€ (x : V), βŸͺT x, x⟫_β„‚ = 0) ↔ T = 0

The theorem `inner_map_self_eq_zero` states that for a complex inner product space `V` over the complex numbers, a linear map `T` from `V` to itself is the zero map if and only if the inner product of `T(x)` and `x` is zero for all `x` in `V`. In other words, the condition that for every vector in `V`, the inner product of the image of the vector under `T` and the vector itself equals zero, characterizes the zero linear map.

More concisely: A linear map T from a complex inner product space V to itself is the zero map if and only if the inner product of T(x) and x equals zero for all x in V.

Orthonormal.toSubtypeRange

theorem Orthonormal.toSubtypeRange : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ Orthonormal π•œ Subtype.val

The theorem `Orthonormal.toSubtypeRange` states that if we have an orthonormal family of vectors `v : ΞΉ β†’ E` in an inner product space `E` over a field `π•œ` with a RCLike structure, then the function `Subtype.val : (range v) β†’ E`, which retrieves the underlying vector from each subtype in the range of `v`, also constitutes an orthonormal family. In other words, the orthonormal property is preserved when considering the vectors as elements of a subtype range.

More concisely: If `v` is an orthonormal family of vectors in an inner product space, then the underlying vectors in the range of `v` form an orthonormal family.

Orthonormal.comp_linearIsometryEquiv

theorem Orthonormal.comp_linearIsometryEquiv : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} {E' : Type u_7} [inst_3 : NormedAddCommGroup E'] [inst_4 : InnerProductSpace π•œ E'] {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (f : E ≃ₗᡒ[π•œ] E'), Orthonormal π•œ (⇑f ∘ v)

This theorem states that a linear isometric equivalence, which is a linear transformation preserving distances, maintains the orthonormality of a set of vectors in an Inner Product Space. In other words, if a set of vectors is orthonormal in an Inner Product Space, then its image under a linear isometric equivalence is also orthonormal. Here, orthonormality means each vector in the set has a norm of 1, and the inner product of any two distinct vectors in the set is zero.

More concisely: If T is a linear isometric equivalence on a finite-dimensional inner product space, then T(S) is orthonormal whenever S is an orthonormal set in the space.

Finsupp.sum_inner

theorem Finsupp.sum_inner : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} (l : ΞΉ β†’β‚€ π•œ) (v : ΞΉ β†’ E) (x : E), βŸͺl.sum fun i a => a β€’ v i, x⟫_π•œ = l.sum fun i a => (starRingEnd π•œ) a β€’ βŸͺv i, x⟫_π•œ

This theorem states that for any type `π•œ` with a ring-like structure, any type `E` that is a normed commutative additive group and also an inner product space over `π•œ`, and another type `ΞΉ`, given a finite support function `l` from `ΞΉ` to `π•œ`, a function `v` from `ΞΉ` to `E`, and an element `x` of `E`, the inner product of the sum of scaled values of `v` by `l` with `x` is equal to the sum of the scaled inner products of `v` with `x` by the conjugate of `l`. Here, `starRingEnd π•œ` denotes the conjugation operation in the ring `π•œ`, and `βŸͺ , ⟫_π•œ` denotes the inner product in the space `E`.

More concisely: For any normed commutative additive group `E` over a ring `π•œ` with conjugation `*`, and finite support function `l` from `ΞΉ` to `π•œ`, the inner product of `x` in `E` with the sum of `l(i) * v(i)` over `i` in `ΞΉ` equals the sum of `l(i) * (βŸͺv(i), x⟫_π•œ)` over `i` in `ΞΉ`, where `v` is a function from `ΞΉ` to `E`.

re_inner_eq_norm_mul_self_add_norm_mul_self_sub_norm_sub_mul_self_div_two

theorem re_inner_eq_norm_mul_self_add_norm_mul_self_sub_norm_sub_mul_self_div_two : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), RCLike.re βŸͺx, y⟫_π•œ = (β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€– - β€–x - yβ€– * β€–x - yβ€–) / 2

This theorem, named 're_inner_eq_norm_mul_self_add_norm_mul_self_sub_norm_sub_mul_self_div_two', states the polarization identity which relates the real part of the inner product of two vectors to their norms. Specifically, for any field `π•œ` that is RCLike and any normed add commutative group `E` that is also an inner product space, the real part of the inner product of two elements `x` and `y` from `E`, denoted as `RCLike.re βŸͺx, y⟫_π•œ`, equals half of the sum of the squares of the norms of `x` and `y`, minus the square of the norm of the difference of `x` and `y`. In mathematical terms, this is expressed as `Re(βŸͺx, y⟫) = (β€–xβ€–Β² + β€–yβ€–Β² - β€–x - yβ€–Β²) / 2`.

More concisely: The real part of the inner product of two elements in an RCLike field with respect to a normed add commutative group and inner product space equals half the sum of the squares of their norms minus the square of the norm of their difference.

InnerProductSpace.Core.inner_add_left

theorem InnerProductSpace.Core.inner_add_left : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] (x y z : F), βŸͺx + y, z⟫_π•œ = βŸͺx, z⟫_π•œ + βŸͺy, z⟫_π•œ

This theorem, `InnerProductSpace.Core.inner_add_left`, states that for any types `π•œ` and `F` where `π•œ` is a ring-like structure and `F` is an additive commutative group that also forms a module over `π•œ`, with `c` being an inner product space core over `π•œ` and `F`, the inner product of the sum of two elements `x` and `y` with a third element `z` is equal to the sum of the inner products of `x` with `z` and `y` with `z`. This is to say, inner product operation is distributive over vector addition on the left side.

More concisely: For any inner product space core `c` over commutative ring `π•œ` and additive commutative group `F`, the inner product `οΏ½οΏ½Γ΄t(x + y, z)` equals `οΏ½οΏ½Γ΄t(x, z) + οΏ½οΏ½Γ΄t(y, z)` for all `x, y, z` in `F`.

norm_sub_sq_real

theorem norm_sub_sq_real : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), β€–x - yβ€– ^ 2 = β€–xβ€– ^ 2 - 2 * βŸͺx, y⟫_ℝ + β€–yβ€– ^ 2

This theorem, named `norm_sub_sq_real`, states that for any types `F` which is a normed add commutative group and an inner product space over real numbers, and for any two elements `x` and `y` of type `F`, the square of the norm of the difference of `x` and `y` is equal to the square of the norm of `x` minus two times the inner product of `x` and `y` in real numbers plus the square of the norm of `y`. This is essentially the expansion of the square of the norm of the difference between two elements in such a space.

More concisely: For any normed add commutative group and inner product space F over the real numbers, the square of the norm of x - y is equal to the square of the norm of x - y equals the square of the norm of x - y equals the square of the norm of x + the square of the norm of y - 2βˆ₯x Β· yβˆ₯, where Β· denotes the inner product.

real_inner_div_norm_mul_norm_eq_one_of_ne_zero_of_pos_mul

theorem real_inner_div_norm_mul_norm_eq_one_of_ne_zero_of_pos_mul : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {x : F} {r : ℝ}, x β‰  0 β†’ 0 < r β†’ βŸͺx, r β€’ x⟫_ℝ / (β€–xβ€– * β€–r β€’ xβ€–) = 1

The theorem `real_inner_div_norm_mul_norm_eq_one_of_ne_zero_of_pos_mul` states that for any non-zero vector `x` and positive real number `r`, in an Inner Product Space over the real numbers, the inner product of `x` with `r` times `x`, divided by the product of their norms, equals one. Here, `βŸͺx, r β€’ x⟫_ℝ` represents the inner product of `x` and `rβ€’x`, `β€–xβ€–` and `β€–r β€’ xβ€–` are the norms of `x` and `rβ€’x`, respectively, and `rβ€’x` represents the scalar multiplication of `r` with `x`. It's a property of inner product spaces that connects the concepts of inner product and norm.

More concisely: For any non-zero vector `x` in an inner product space over the real numbers and positive real number `r`, the quotient of the inner product of `x` and `r` times `x` by the product of their norms is equal to 1.

inner_mul_inner_self_le

theorem inner_mul_inner_self_le : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), β€–βŸͺx, y⟫_π•œβ€– * β€–βŸͺy, x⟫_π•œβ€– ≀ RCLike.re βŸͺx, x⟫_π•œ * RCLike.re βŸͺy, y⟫_π•œ

This is the Cauchy-Schwarz inequality for inner product spaces. The theorem states that for any types `π•œ` and `E`, given `π•œ` is an ordered field and `E` is a normed add commutative group with an inner product space over `π•œ`, for any two elements `x` and `y` in `E`, the absolute value of the inner product of `x` and `y` squared is less than or equal to the product of the inner product of `x` with itself and `y` with itself. This is a fundamental inequality in the theory of inner product spaces, often used to prove other theorems.

More concisely: For any inner product space over an ordered field, the inner product of two vectors squared is less than or equal to the product of their norms squared.

real_inner_add_sub_eq_zero_iff

theorem real_inner_add_sub_eq_zero_iff : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), βŸͺx + y, x - y⟫_ℝ = 0 ↔ β€–xβ€– = β€–yβ€–

This theorem states that for any two vectors `x` and `y` in a real inner product space (a space equipped with a way to multiply vectors and a notion of length), the sum and the difference of these vectors are orthogonal (i.e., their inner product is zero) if and only if they have the same norm (length). In other words, two vectors have the same length if and only if the dot product of their sum and difference is zero.

More concisely: In a real inner product space, two vectors have the same norm if and only if their sum and difference are orthogonal.

inner_sub_left

theorem inner_sub_left : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y z : E), βŸͺx - y, z⟫_π•œ = βŸͺx, z⟫_π•œ - βŸͺy, z⟫_π•œ

The theorem `inner_sub_left` states that for any types `π•œ` and `E` where `π•œ` is a type with some ring-like structure (denoted by `RCLike π•œ`) and `E` is a normed additive commutative group that also forms an inner product space over `π•œ`, the inner product of the difference of two elements `x` and `y` in `E` with another element `z` in `E` is equal to the difference of the inner products of `x` and `z` and `y` and `z` respectively. In mathematical terms, it says that for all `x`, `y`, and `z` in `E`, the equation `βŸͺx - y, z⟫_π•œ = βŸͺx, z⟫_π•œ - βŸͺy, z⟫_π•œ` holds true. This theorem represents the distributive property of the inner product operation over subtraction.

More concisely: For any normed additive commutative group `E` over a ring-like type `π•œ`, the inner product of the difference of two elements in `E` with a third element is equal to the difference of their individual inner products.

abs_real_inner_div_norm_mul_norm_le_one

theorem abs_real_inner_div_norm_mul_norm_le_one : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), |βŸͺx, y⟫_ℝ / (β€–xβ€– * β€–yβ€–)| ≀ 1

This theorem states that for any type `F` that is a normed-additive-commutative-group and an inner-product-space over the real numbers, for any two vectors `x` and `y` in `F`, the absolute value of the real inner product of `x` and `y` divided by the product of their norms is always less than or equal to 1. This is related to the idea that the cosine of the angle between two non-zero vectors in an inner product space is given by the ratio of the inner product of the vectors and the product of their norms.

More concisely: For any normed-additive-commutative-group and inner-product-space F over the real numbers, and any vectors x and y in F, the absolute value of their inner product is less than or equal to the product of their norms.

inner_add_left

theorem inner_add_left : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y z : E), βŸͺx + y, z⟫_π•œ = βŸͺx, z⟫_π•œ + βŸͺy, z⟫_π•œ

This theorem, named 'inner_add_left', states that for any type π•œ and any normed add commutative group E, which also forms an inner product space over π•œ, the inner product of the sum of two elements (x and y) and a third element z is equal to the sum of the inner products of x and z, and y and z. In mathematical notation, this could be written as: βŸͺx + y, z⟫_π•œ = βŸͺx, z⟫_π•œ + βŸͺy, z⟫_π•œ. This property is fundamental to the theory of inner product spaces.

More concisely: For any normed add commutative group E that is also an inner product space over field π•œ, the inner product of the sum of two elements x and y, and a third element z, equals the sum of the inner products of x and z, and y and z: βŸͺx + y, z⟫_π•œ = βŸͺx, z⟫_π•œ + βŸͺy, z⟫_π•œ.

real_inner_div_norm_mul_norm_eq_one_iff

theorem real_inner_div_norm_mul_norm_eq_one_iff : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] (x y : F), βŸͺx, y⟫_ℝ / (β€–xβ€– * β€–yβ€–) = 1 ↔ x β‰  0 ∧ βˆƒ r, 0 < r ∧ y = r β€’ x

This theorem states that for any two vectors `x` and `y` in a real inner product space, the value of their inner product divided by the product of their norms equals one if and only if both vectors are nonzero and one vector is a positive scalar multiple of the other. In more mathematical terms, we have that $\dfrac{βŸͺx, y⟫_ℝ}{β€–xβ€– * β€–yβ€–} = 1$ if and only if $x β‰  0$ and there exists a positive real number $r$ such that $y = r * x$.

More concisely: For any non-zero vectors `x` and `y` in a real inner product space, their inner product equals the product of their norms and one. That is, $βŸͺx, y⟫\_ℝ = β€–xβ€– * β€–yβ€– \implies x = r * y$ for some positive scalar $r$.

InnerProductSpace.Core.inner_mul_inner_self_le

theorem InnerProductSpace.Core.inner_mul_inner_self_le : βˆ€ {π•œ : Type u_1} {F : Type u_3} [inst : RCLike π•œ] [inst_1 : AddCommGroup F] [inst_2 : Module π•œ F] [c : InnerProductSpace.Core π•œ F] (x y : F), β€–βŸͺx, y⟫_π•œβ€– * β€–βŸͺy, x⟫_π•œβ€– ≀ RCLike.re βŸͺx, x⟫_π•œ * RCLike.re βŸͺy, y⟫_π•œ

This is a statement of the Cauchy-Schwarz inequality in the context of inner product spaces. Given an inner product space over a field `π•œ` and a module `F` that forms an additive commutative group and is also a vector space over `π•œ`, the theorem states that for any two vectors `x` and `y` in `F`, the square of the absolute value of the inner product of `x` and `y` (denoted as `β€–βŸͺx, y⟫_π•œβ€– * β€–βŸͺy, x⟫_π•œβ€–`) is less than or equal to the product of the inner products of `x` and `x` and of `y` and `y` (denoted as `RCLike.re βŸͺx, x⟫_π•œ * RCLike.re βŸͺy, y⟫_π•œ`). This inequality is a key step in proving that the inner product space is a normed group, specifically for proving the triangle inequality. In the inequality, `RCLike.re` is a function that maps elements of type `K` to real numbers.

More concisely: For any inner product space over a field and two of its vectors, the inner product of the vectors multiplied by the conjugate of their dot product is less than or equal to the square of the magnitudes of the vectors' inner products.

Orthonormal.inner_left_fintype

theorem Orthonormal.inner_left_fintype : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} [inst_3 : Fintype ΞΉ] {v : ΞΉ β†’ E}, Orthonormal π•œ v β†’ βˆ€ (l : ΞΉ β†’ π•œ) (i : ΞΉ), βŸͺFinset.univ.sum fun i => l i β€’ v i, v i⟫_π•œ = (starRingEnd π•œ) (l i)

This theorem states that for any field `π•œ`, any normed additive commutative group `E`, and any inner product space over `E` and `π•œ`, given a type `ΞΉ` with a finite number of elements, and a function `v` that maps an element of type `ΞΉ` to a vector in `E` such that `v` forms an orthonormal set, for any function `l` from `ΞΉ` to `π•œ` and any `i` in `ΞΉ`, the inner product of a linear combination of the vectors in `v` (where the coefficients come from `l`) with vector `v i` is equal to the complex conjugate of `l i`. In other words, when you take the inner product of a linear combination of an orthonormal set with one of the vectors in the set, you get back the coefficient of that vector in the linear combination. This is a key property of orthonormal sets in inner product spaces.

More concisely: For any orthonormal set `v` in an inner product space over a field `π•œ`, and any function `l` from the index type `ΞΉ` to `π•œ`, the inner product of a linear combination of `v` with `v i` equals the complex conjugate of `l i`.

norm_inner_le_norm

theorem norm_inner_le_norm : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), β€–βŸͺx, y⟫_π•œβ€– ≀ β€–xβ€– * β€–yβ€–

The theorem `norm_inner_le_norm` is a statement of the Cauchy-Schwarz inequality in the context of an inner product space. Specifically, it says that for any scalar field `π•œ` and any type `E` that forms a normed additive commutative group and also an inner product space over `π•œ`, the norm of the inner product of any two elements `x` and `y` of `E` is less than or equal to the product of the norms of `x` and `y`. In other words, if `βŸͺ., .⟫_π•œ` denotes the inner product and `β€–.β€–` denotes the norm, then `β€–βŸͺx, y⟫_π•œβ€– ≀ β€–xβ€– * β€–yβ€–` for all `x` and `y` in `E`.

More concisely: For any inner product space over a scalar field endowed with a norm, the inner product of any two elements is less than or equal to the product of their respective norms.

norm_add_mul_self

theorem norm_add_mul_self : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E), β€–x + yβ€– * β€–x + yβ€– = β€–xβ€– * β€–xβ€– + 2 * RCLike.re βŸͺx, y⟫_π•œ + β€–yβ€– * β€–yβ€–

The theorem `norm_add_mul_self` states that for any two elements `x` and `y` of an inner product space over a certain field `π•œ` (which has a property defined by the type class `RCLike`), the square of the norm of `x + y` equals the sum of the square of the norm of `x`, twice the real part of the inner product of `x` and `y`, and the square of the norm of `y`. In mathematical notation, this would be expressed as β€–x + yβ€–^2 = β€–xβ€–^2 + 2 Re⟨x, y⟩ + β€–yβ€–^2. This is essentially the law of cosines in the context of inner product spaces.

More concisely: The theorem `norm_add_mul_self` asserts that for elements `x` and `y` in an inner product space over a field `π•œ` with the `RCLike` property, the norm of their sum squared equals the sum of the squares of their individual norms, plus twice the real part of their inner product.

norm_add_sq_eq_norm_sq_add_norm_sq_real

theorem norm_add_sq_eq_norm_sq_add_norm_sq_real : βˆ€ {F : Type u_3} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace ℝ F] {x y : F}, βŸͺx, y⟫_ℝ = 0 β†’ β€–x + yβ€– * β€–x + yβ€– = β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€–

This theorem is a variant of the Pythagorean Theorem, in the context of Real Inner Product Spaces. It states that for any two vectors `x` and `y` in a normed additive commutative group `F` which also forms a Real Inner Product Space, if the inner product of `x` and `y` is zero, then the square of the norm (magnitude) of the sum of `x` and `y` is equal to the sum of the squares of the norms of `x` and `y`. In mathematical terms, if `βŸͺx, y⟫_ℝ = 0`, then `β€–x + yβ€– * β€–x + yβ€– = β€–xβ€– * β€–xβ€– + β€–yβ€– * β€–yβ€–`. This is analogous to the Pythagorean theorem's statement that in a right-angled triangle, the square of the length of the hypotenuse (`c`) is equal to the sum of the squares of the other two sides (`a` and `b`), often expressed as `c^2 = a^2 + b^2`.

More concisely: In a real inner product space, if the inner product of two vectors is zero, then the norm of their sum is equal to the sum of their norms.

ext_inner_map

theorem ext_inner_map : βˆ€ {V : Type u_4} [inst : NormedAddCommGroup V] [inst_1 : InnerProductSpace β„‚ V] (S T : V β†’β‚—[β„‚] V), (βˆ€ (x : V), βŸͺS x, x⟫_β„‚ = βŸͺT x, x⟫_β„‚) ↔ S = T

The theorem `ext_inner_map` states that for any two linear maps `S` and `T` from a complex vector space `V` to itself, they are equal if and only if, for every vector `x` in `V`, the inner product of `S x` and `x` is equal to the inner product of `T x` and `x`. In mathematical notation, this is expressed as `βŸͺS x, x⟫_β„‚ = βŸͺT x, x⟫_β„‚` for all `x` in `V`. This theorem provides a characterisation of when two linear operators on an inner product space are equal.

More concisely: Two linear maps from a complex vector space to itself are equal if and only if they have the same inner product with every vector in the space.

inner_smul_left

theorem inner_smul_left : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y : E) (r : π•œ), βŸͺr β€’ x, y⟫_π•œ = (starRingEnd π•œ) r * βŸͺx, y⟫_π•œ

This theorem, `inner_smul_left`, establishes a property of the inner product operation in the context of an inner product space `E` over a field `π•œ` with a `RCLike` (Regularity and Completeness Like) structure. Specifically, it states that for any two vectors `x` and `y` in `E` and any scalar `r` in `π•œ`, the inner product of the scaled vector `r β€’ x` and `y` is equal to the product of the conjugate of the scalar `r` (represented by `(starRingEnd π•œ) r`) and the inner product of the original vectors `x` and `y`. This theorem thus encapsulates a form of homogeneity property of the inner product with respect to scalar multiplication.

More concisely: For any inner product space E over a field π•œ with a RCLike structure, the inner product of a scalar r times a vector x with a vector y is equal to the product of the conjugate of r and the inner product of x and y. In Lean notation, `(βˆ₯x, yβˆ₯ = (starRingEnd π•œ) r * βˆ₯x, yβˆ₯)`.

inner_sub_right

theorem inner_sub_right : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] (x y z : E), βŸͺx, y - z⟫_π•œ = βŸͺx, y⟫_π•œ - βŸͺx, z⟫_π•œ

The theorem `inner_sub_right` states that for all elements `x`, `y`, and `z` of an inner product space `E` over a field `π•œ`, the inner product of `x` and the difference `y - z` equals the difference of the inner products of `x` and `y`, and of `x` and `z`. This can be written in mathematical notation as `βŸͺx, y - z⟫_π•œ = βŸͺx, y⟫_π•œ - βŸͺx, z⟫_π•œ`. Here `βŸͺ., .⟫_π•œ` denotes the inner product operation, `E` is assumed to be a normed additive commutative group, and `π•œ` is assumed to support operations that make it behave like the real or complex numbers.

More concisely: The inner product of an element with the difference of two other elements is equal to the difference of their inner products.

orthonormal_iff_ite

theorem orthonormal_iff_ite : βˆ€ {π•œ : Type u_1} {E : Type u_2} [inst : RCLike π•œ] [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π•œ E] {ΞΉ : Type u_4} [inst_3 : DecidableEq ΞΉ] {v : ΞΉ β†’ E}, Orthonormal π•œ v ↔ βˆ€ (i j : ΞΉ), βŸͺv i, v j⟫_π•œ = if i = j then 1 else 0

This theorem characterizes an indexed set of vectors being orthonormal in an inner product space, given a ring-like structure and a normed additive commutative group. Specifically, it states that a set of vectors `v`, indexed by type `ΞΉ`, is orthonormal in the inner product space (over field `π•œ` and vector space `E`) if and only if the inner product of any two distinct vectors in the set is zero, while the inner product of a vector with itself is one. This is equivalent to saying that the inner product of two vectors `v i` and `v j` is equal to the Kronecker delta, which is `1` when `i` and `j` are equal, and `0` otherwise. The theorem relies on the assumption that equality between indices is decidable.

More concisely: A set of vectors indexed by type ΞΉ in an inner product space over field π•œ and vector space E is orthonormal if and only if the inner product of any two distinct vectors is zero and the inner product of a vector with itself is one. Equivalently, the inner product of two vectors is equal to the Kronecker delta.