inner_matrix_col_col
theorem inner_matrix_col_col :
β {π : Type u_3} [inst : RCLike π] {m : Type u_8} {n : Type u_9} [inst_1 : Fintype m] (A B : Matrix m n π)
(i j : n),
βͺ(WithLp.equiv 2 (m β π)).symm (A.transpose i), (WithLp.equiv 2 (m β π)).symm (B.transpose j)β«_π =
(A.conjTranspose * B) i j
This theorem states that for any type `π` that behaves like a ring and any types `m` and `n` which represent the indices of rows and columns, respectively, if `A` and `B` are matrices with entries in `π`, the inner product of the `i`-th column of `A` and the `j`-th column of `B` is equal to the element at position `(i, j)` in the matrix product of the conjugate transpose of `A` and `B`. The theorem is applicable for matrices with finite number of rows (`Fintype m`). The inner product and the matrix entries are mapped from the `WithLp` space to `π` space using the `WithLp.equiv` equivalence.
More concisely: For any ring-like type `π` and finite matrices `A` and `B` over `π`, the `(i, j)`-entry of the matrix product of `A.transpose.conj`.`B` is equal to the inner product of the `i`-th column of `A` and the `j`-th column of `B`.
|
Orthonormal.exists_orthonormalBasis_extension
theorem Orthonormal.exists_orthonormalBasis_extension :
β {π : Type u_3} [inst : RCLike π] {E : Type u_4} [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π E]
{v : Set E} [inst_3 : FiniteDimensional π E], Orthonormal π Subtype.val β β u b, v β βu β§ βb = Subtype.val
This theorem states that in a finite-dimensional inner product space, any orthonormal subset can be extended to an orthonormal basis. More specifically, given a finite dimensional inner product space over a certain field, if we have a set of vectors that is orthonormal (i.e., each vector has norm 1 and any pair of distinct vectors is orthogonal), then there exists an extended set and a bijection function such that the original orthonormal set is a subset of the extended set and the bijection function is equivalent to extracting the underlying element from a subtype.
More concisely: In a finite-dimensional inner product space, every orthonormal set can be extended to an orthonormal basis.
|
OrthonormalBasis.toMatrix_orthonormalBasis_mem_unitary
theorem OrthonormalBasis.toMatrix_orthonormalBasis_mem_unitary :
β {ΞΉ : Type u_1} {π : Type u_3} [inst : RCLike π] {E : Type u_4} [inst_1 : NormedAddCommGroup E]
[inst_2 : InnerProductSpace π E] [inst_3 : Fintype ΞΉ] [inst_4 : DecidableEq ΞΉ] (a b : OrthonormalBasis ΞΉ π E),
a.toBasis.toMatrix βb β Matrix.unitaryGroup ΞΉ π
The theorem `OrthonormalBasis.toMatrix_orthonormalBasis_mem_unitary` states that for any type `ΞΉ`, type `π` with a ring-like structure, and a type `E` that is a normed add commutative group with an inner product space over `π`, given `a` and `b` as orthonormal bases in this space, the change-of-basis matrix from `a` to `b` is a unitary matrix. This means that the matrix that transforms coordinates from basis `a` to basis `b` preserves lengths and angles, as it is in the unitary group of `ΞΉ` by `ΞΉ` matrices over `π`. The condition of being in the unitary group means that the star-transpose of the matrix is its inverse. This theorem holds for any finite type `ΞΉ` and assumes that the equality of elements of `ΞΉ` is decidable.
More concisely: For any orthonormal bases `a` and `b` of a normed add commutative group `E` over a ring-like type `π` with an inner product space, the change-of-basis matrix from `a` to `b` is a unitary matrix, i.e., it preserves lengths and angles by being in the unitary group of `ΞΉ` by `ΞΉ` matrices over `π`, where unitary matrices have star-transposes as their inverses.
|
OrthonormalBasis.toMatrix_orthonormalBasis_mem_orthogonal
theorem OrthonormalBasis.toMatrix_orthonormalBasis_mem_orthogonal :
β {ΞΉ : Type u_1} {F : Type u_6} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace β F] [inst_2 : Fintype ΞΉ]
[inst_3 : DecidableEq ΞΉ] (a b : OrthonormalBasis ΞΉ β F), a.toBasis.toMatrix βb β Matrix.orthogonalGroup ΞΉ β
This theorem states that the change-of-basis matrix between two orthonormal bases `a` and `b` is an orthogonal matrix. Here, `a` and `b` are orthonormal bases in an inner product space over the real numbers with a `Fintype ΞΉ` index set and a `DecidableEq ΞΉ` equality decision procedure. The theorem specifically asserts that the matrix representation of the basis transformation from `a` to `b` belongs to the group of orthogonal matrices of size `ΞΉ` over the real numbers (`Matrix.orthogonalGroup ΞΉ β`).
More concisely: The change-of-basis matrix between two orthonormal bases in a real inner product space is an orthogonal matrix.
|
OrthonormalBasis.orthonormal
theorem OrthonormalBasis.orthonormal :
β {ΞΉ : Type u_1} {π : Type u_3} [inst : RCLike π] {E : Type u_4} [inst_1 : NormedAddCommGroup E]
[inst_2 : InnerProductSpace π E] [inst_3 : Fintype ΞΉ] (b : OrthonormalBasis ΞΉ π E), Orthonormal π βb
The theorem `OrthonormalBasis.orthonormal` states that for any set of vectors in an inner product space `E` over field `π`, indexed by type `ΞΉ`, if these vectors form an orthonormal basis `b`, then the function `b` mapping from `ΞΉ` to `E` possesses the property of orthonormality. The property of orthonormality means that for every vector in the set, the norm is one, and the inner product of any two distinct vectors in the set is zero. This theorem applies to finite types `ΞΉ`, and `π` is a field that behaves like real or complex numbers in its operations.
More concisely: If `b` is an orthonormal basis of the inner product space `E` over field `π`, then for all `i, j β ΞΉ` with `i β j`, we have `β₯biβ₯ = 1` and `β©bi, bjβͺ = 0`.
|
EuclideanSpace.norm_eq
theorem EuclideanSpace.norm_eq :
β {π : Type u_8} [inst : RCLike π] {n : Type u_9} [inst_1 : Fintype n] (x : EuclideanSpace π n),
βxβ = (Finset.univ.sum fun i => βx iβ ^ 2).sqrt
The theorem `EuclideanSpace.norm_eq` states that for any number system `π` that behaves like the real or complex numbers (as indicated by `RCLike π`), and for any finite type `n` (which effectively denotes the dimension of our Euclidean space), given any point `x` in the `n`-dimensional Euclidean space over `π`, the norm of `x` (denoted by `βxβ`) is equal to the square root of the sum of squares of the norms of its coordinates. The sum is taken over all coordinates, represented as the elements of the universal finite set denoted by `Finset.univ`. In mathematical terms, if `x` is a point in an `n`-dimensional Euclidean space, the norm of `x` is given by `βxβ = sqrt(β_{i β univ} βx_iβ^2)`, where `sqrt` denotes the square root, `β` denotes the summation and `x_i` are the coordinates of `x`.
More concisely: For any number system `π` with `RCLike` structure and any point `x` in an `n`-dimensional Euclidean space over `π`, the norm of `x` is equal to the square root of the sum of the squares of its coordinates' norms.
|
Basis.toBasis_toOrthonormalBasis
theorem Basis.toBasis_toOrthonormalBasis :
β {ΞΉ : Type u_1} {π : Type u_3} [inst : RCLike π] {E : Type u_4} [inst_1 : NormedAddCommGroup E]
[inst_2 : InnerProductSpace π E] [inst_3 : Fintype ΞΉ] (v : Basis ΞΉ π E) (hv : Orthonormal π βv),
(v.toOrthonormalBasis hv).toBasis = v
The theorem `Basis.toBasis_toOrthonormalBasis` states that for any finite-dimensional inner product space `E` over a ring `π` that behaves like real or complex numbers, if we have a basis `v` for `E` and this basis is orthonormal (meaning each basis vector has norm 1 and any pair of different basis vectors are orthogonal), then the basis obtained by converting this orthonormal basis back to a regular basis is the same as the original basis `v`. In other words, the process of converting a basis to an orthonormal basis and then back to a regular basis is an identity operation on the set of orthonormal bases.
More concisely: For any finite-dimensional inner product space over a ring behaving like the real or complex numbers, if a basis is orthonormal, then converting it to a regular basis and back yields the original basis.
|
OrthonormalBasis.det_to_matrix_orthonormalBasis
theorem OrthonormalBasis.det_to_matrix_orthonormalBasis :
β {ΞΉ : Type u_1} {π : Type u_3} [inst : RCLike π] {E : Type u_4} [inst_1 : NormedAddCommGroup E]
[inst_2 : InnerProductSpace π E] [inst_3 : Fintype ΞΉ] [inst_4 : DecidableEq ΞΉ] (a b : OrthonormalBasis ΞΉ π E),
βa.toBasis.det βbβ = 1
This theorem states that for any type `ΞΉ`, any type `π` which behaves like a ring, a type `E` that is a normed additive commutative group and an inner product space over `π`, and any two orthonormal bases `a` and `b` of `ΞΉ` over `π` in `E`; the determinant of the change-of-basis matrix from `a` to `b` has a norm equal to 1. Here, `Fintype ΞΉ` asserts that `ΞΉ` is a finite type and `DecidableEq ΞΉ` asserts that equality between elements of type `ΞΉ` is a decidable relation.
More concisely: For any finite type `ΞΉ`, given orthonormal bases `a` and `b` of a normed additive commutative group and inner product space `E` over a ring `π`, the norm of the change-of-basis matrix from `a` to `b` is equal to 1.
|
Mathlib.Analysis.InnerProductSpace.PiL2._auxLemma.2
theorem Mathlib.Analysis.InnerProductSpace.PiL2._auxLemma.2 :
β {Ξ± : Type u} {a : Ξ±} {p : Ξ± β Prop}, (a β {x | p x}) = p a
This theorem states that for any type `Ξ±`, any value `a` of `Ξ±`, and any predicate `p` on `Ξ±`, the condition of `a` being in the set of all `x` of type `Ξ±` that satisfy `p` is equivalent to `p a` being true. In other words, the membership of `a` in the set defined by `p` is the same as the truth of `p` when applied to `a`.
More concisely: For any type `Ξ±`, predicate `p` on `Ξ±`, and value `a` of type `Ξ±`, `a` is in the set `{x : Ξ± | p x}` if and only if `p a` is true.
|
EuclideanSpace.single_apply
theorem EuclideanSpace.single_apply :
β {ΞΉ : Type u_1} {π : Type u_3} [inst : RCLike π] [inst_1 : DecidableEq ΞΉ] (i : ΞΉ) (a : π) (j : ΞΉ),
EuclideanSpace.single i a j = if j = i then a else 0
The theorem `EuclideanSpace.single_apply` states that for any types `ΞΉ` and `π`, where `π` is RCLike and `ΞΉ` has decidable equality, given elements `i` and `j` of `ΞΉ` and an element `a` of `π`, the application of the `EuclideanSpace.single` function to `i` and `a` at the point `j` is `a` if `j` equals `i` and `0` otherwise. In other words, the function `EuclideanSpace.single` assigns the value `a` to the coordinate indexed by `i` and assigns `0` to all other coordinates in a Euclidean space.
More concisely: For any type `ΞΉ` with decidable equality and `π` an RCLike ring, the function `EuclideanSpace.single` assigns the value `a` to the `i`-th coordinate and `0` to all other coordinates in a Euclidean space.
|
OrthonormalBasis.det_to_matrix_orthonormalBasis_real
theorem OrthonormalBasis.det_to_matrix_orthonormalBasis_real :
β {ΞΉ : Type u_1} {F : Type u_6} [inst : NormedAddCommGroup F] [inst_1 : InnerProductSpace β F] [inst_2 : Fintype ΞΉ]
[inst_3 : DecidableEq ΞΉ] (a b : OrthonormalBasis ΞΉ β F), a.toBasis.det βb = 1 β¨ a.toBasis.det βb = -1
The theorem `OrthonormalBasis.det_to_matrix_orthonormalBasis_real` states that for any type `ΞΉ`, with `F` being a type of a normed additive commutative group that also has an inner product space over the real numbers, and for any finite `ΞΉ` that has decidable equality, if `a` and `b` are orthonormal bases in `F`, the determinant of the change-of-basis matrix from `a` to `b` is either 1 or -1. In other words, the change of basis from one orthonormal basis to another doesn't cause any scaling, only rotations and reflections.
More concisely: For any finite orthonormal bases `a` and `b` of a real inner product space `F`, the determinant of the change-of-basis matrix from `a` to `b` is either 1 or -1.
|
DirectSum.IsInternal.subordinateOrthonormalBasis_subordinate
theorem DirectSum.IsInternal.subordinateOrthonormalBasis_subordinate :
β {ΞΉ : Type u_1} {π : Type u_3} [inst : RCLike π] {E : Type u_4} [inst_1 : NormedAddCommGroup E]
[inst_2 : InnerProductSpace π E] [inst_3 : Fintype ΞΉ] [inst_4 : FiniteDimensional π E] {n : β}
(hn : FiniteDimensional.finrank π E = n) [inst_5 : DecidableEq ΞΉ] {V : ΞΉ β Submodule π E}
(hV : DirectSum.IsInternal V) (a : Fin n) (hV' : OrthogonalFamily π (fun i => β₯(V i)) fun i => (V i).subtypeβα΅’),
(DirectSum.IsInternal.subordinateOrthonormalBasis hn hV hV') a β
V (DirectSum.IsInternal.subordinateOrthonormalBasisIndex hn hV a hV')
The theorem `DirectSum.IsInternal.subordinateOrthonormalBasis_subordinate` states that for any index set `ΞΉ`, scalar field `π` which follows the rules of a ring with commutative multiplication (RCLike), a normed additive commutative group `E` that is also an inner product space over `π`, a finite type `ΞΉ`, a finite-dimensional space `E` over `π`, a natural number `n` equal to the finite rank of `E` over `π`, a decidable equality on `ΞΉ`, and a direct sum `V` of submodules of `E` that is an internal direct sum, the basis constructed by the method `DirectSum.IsInternal.subordinateOrthonormalBasis` is subordinate to the orthogonal family `V`. In other words, every basis vector obtained from the method `DirectSum.IsInternal.subordinateOrthonormalBasis` belongs to the associated submodule in `V`, determined by the method `DirectSum.IsInternal.subordinateOrthonormalBasisIndex`.
More concisely: Given an inner product space `E` over a commutative ring `π` with a finite-dimensional internal direct sum `V` of submodules, the orthonormal basis obtained from `DirectSum.IsInternal.subordinateOrthonormalBasis` belongs to each submodule in `V`.
|
inner_matrix_row_row
theorem inner_matrix_row_row :
β {π : Type u_3} [inst : RCLike π] {m : Type u_8} {n : Type u_9} [inst_1 : Fintype n] (A B : Matrix m n π)
(i j : m),
βͺ(WithLp.equiv 2 (n β π)).symm (A i), (WithLp.equiv 2 (n β π)).symm (B j)β«_π = (B * A.conjTranspose) j i
This theorem states that for any field `π` (with elements that can be related by a certain relation `RCLike`), any finite type `n`, any types `m` and `n`, and any two matrices `A` and `B` with entries in `π` and rows indexed by `m` and columns indexed by `n`, the inner product of the `i`-th row of `A` and the `j`-th row of `B` (in the `WithLp` space with `p=2` and underlying type `n β π`), is equal to the entry at position `(j, i)` of the matrix product of `B` and the conjugate transpose of `A`. This theorem connects the concept of the inner product, which is a central notion in linear algebra and functional analysis, with the operation of matrix multiplication and conjugate transposition.
More concisely: For any field `π`, finite type `n`, and matrices `A` and `B` with entries in `π` and sizes `m x n` and `n x m` respectively, the dot product of the `i`-th row of `A` and the `j`-th row of `B` equals the entry at position `(j, i)` in the matrix product of `B` and the conjugate transpose of `A`.
|
exists_orthonormalBasis
theorem exists_orthonormalBasis :
β (π : Type u_3) [inst : RCLike π] (E : Type u_4) [inst_1 : NormedAddCommGroup E] [inst_2 : InnerProductSpace π E]
[inst_3 : FiniteDimensional π E], β w b, βb = Subtype.val
The theorem `exists_orthonormalBasis` states that for any type `π` with a structure of real or complex numbers (`RCLike π`), and any type `E` that has the structure of a normed additive commutative group and an inner product space over `π`, if `E` is also a finite-dimensional vector space over `π` (`FiniteDimensional π E`), then there exists an orthonormal basis. Specifically, there exist entities `w` and `b` such that the application of `b` yields the underlying element of the type (this is what `βb = Subtype.val` means). This theorem essentially guarantees the existence of an orthonormal basis in any finite-dimensional inner product space.
More concisely: In any finite-dimensional inner product space over real or complex numbers, there exists an orthonormal basis.
|
orthonormalBasis_one_dim
theorem orthonormalBasis_one_dim :
β {ΞΉ : Type u_1} [inst : Fintype ΞΉ] (b : OrthonormalBasis ΞΉ β β), (βb = fun x => 1) β¨ βb = fun x => -1
This theorem states that for any orthonormal basis of the real numbers β (denoted as `b`), the basis is found to be constituted either entirely by the vector `1` or entirely by the vector `-1`. The type of the index set (`ΞΉ`) for the basis is arbitrary and finite. In other words, every element in the basis is equal to either `1` or `-1`, given the orthonormality condition.
More concisely: Every finite orthonormal basis of the real numbers consists only of elements equal to 1 or -1.
|
OrthonormalBasis.coe_toBasis
theorem OrthonormalBasis.coe_toBasis :
β {ΞΉ : Type u_1} {π : Type u_3} [inst : RCLike π] {E : Type u_4} [inst_1 : NormedAddCommGroup E]
[inst_2 : InnerProductSpace π E] [inst_3 : Fintype ΞΉ] (b : OrthonormalBasis ΞΉ π E), βb.toBasis = βb
This theorem states that for any type `ΞΉ`, any ring `π` where `π` is an instance of `RCLike`, and any type `E` which forms a normed additive commutative group and an inner product space over `π`, if `b` is an orthonormal basis of `E` indexed by `ΞΉ` over `π`, then the function obtained by applying the coercion of `b` via the `toBasis` function of `OrthonormalBasis` is the same as the function obtained by directly coercing `b`. In other words, converting an orthonormal basis to a basis doesn't change the basis elements when you map over the index set `ΞΉ`.
More concisely: For any type `ΞΉ`, ring `π`, type `E` forming a normed additive commutative group and inner product space over `π`, and orthonormal basis `b: E β ΞΉ β E` of `E` over `π`, the coercions of `b` via `toBasis` of `OrthonormalBasis` and directly coercing `b` are equal.
|
EuclideanSpace.inner_single_left
theorem EuclideanSpace.inner_single_left :
β {ΞΉ : Type u_1} {π : Type u_3} [inst : RCLike π] [inst_1 : DecidableEq ΞΉ] [inst_2 : Fintype ΞΉ] (i : ΞΉ) (a : π)
(v : EuclideanSpace π ΞΉ), βͺEuclideanSpace.single i a, vβ«_π = (starRingEnd π) a * v i
The theorem `EuclideanSpace.inner_single_left` states that for any type `ΞΉ` (representing the dimensions of the Euclidean space), any type `π` that behaves like a ring-complemented lattice (indicated by `RCLike π`), if there exists a decidable equality for `ΞΉ` (indicated by `DecidableEq ΞΉ`) and the `ΞΉ` type is finite (`Fintype ΞΉ`), then for any `i` of type `ΞΉ`, any `a` of type `π`, and any vector `v` in the Euclidean space of `ΞΉ` dimensions over `π`, the inner product of the vector given by `1 : π` at coordinate `i` and `0 : π` at all other coordinates with `v` is equal to the conjugate of `a` (given by `(starRingEnd π) a`) multiplied by the `i`th coordinate of `v`. This theorem essentially describes the behavior of the inner product operation in the standard real/complex Euclidean space when one of the vectors is a standard basis vector.
More concisely: For a finite-dimensional Euclidean space over a ring-complemented lattice `π` with decidable equality, the inner product of the standard basis vector `1` at coordinate `i` and a vector `v`, and `(starRingEnd π) a` times the `i`th coordinate of `v`, is equal.
|
EuclideanSpace.orthonormal_single
theorem EuclideanSpace.orthonormal_single :
β {ΞΉ : Type u_1} {π : Type u_3} [inst : RCLike π] [inst_1 : DecidableEq ΞΉ] [inst_2 : Fintype ΞΉ],
Orthonormal π fun i => EuclideanSpace.single i 1
The theorem `EuclideanSpace.orthonormal_single` states that for any set `ΞΉ`, any ring-completed field `π`, whenever `ΞΉ` has a decidable equality and is finite (as indicated by `Fintype ΞΉ`), the vectors formed by the function `EuclideanSpace.single` with the value `1` inputted for each `i` in `ΞΉ`, form an orthonormal system. In other words, each of these vectors has a norm of `1`, and the inner product of any two different vectors is `0`, satisfying the conditions of orthonormality.
More concisely: For any finite Decidable Type ΞΉ and ring-completed field π, the family of vectors obtained by applying `EuclideanSpace.single 1` to each element of ΞΉ forms an orthonormal system in the Euclidean Space over π.
|