Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit ec3c1f2

Browse files
committed
chore(analysis/inner_product_space/basic): remove bilin_form_of_real_inner (#15780)
Remove `bilin_form_of_real_inner` and add a remark in the docstring of `sesq_form_of_inner` that for over real spaces the sesquilinear form is by definition a bilinear form. For this we generalize `is_self_adjoint_iff_bilin_form` from `real` to `is_R_or_C` and slightly generalize `linear_map.is_self_adjoint` and `linear_map.is_adjoint_pair` to allow for conjugate linear maps in the second argument.
1 parent 43efa80 commit ec3c1f2

File tree

3 files changed

+13
-19
lines changed

3 files changed

+13
-19
lines changed

src/analysis/inner_product_space/basic.lean

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import analysis.convex.uniform
99
import analysis.normed_space.completion
1010
import analysis.normed_space.bounded_linear_maps
1111
import analysis.normed_space.banach
12-
import linear_algebra.bilinear_form
1312
import linear_algebra.sesquilinear_form
1413

1514
/-!
@@ -428,7 +427,9 @@ lemma real_inner_smul_right {x y : F} {r : ℝ} : ⟪x, r • y⟫_ℝ = r * ⟪
428427
lemma inner_smul_real_right {x y : E} {r : ℝ} : ⟪x, (r : 𝕜) • y⟫ = r • ⟪x, y⟫ :=
429428
by { rw [inner_smul_right, algebra.smul_def], refl }
430429

431-
/-- The inner product as a sesquilinear form. -/
430+
/-- The inner product as a sesquilinear form.
431+
432+
Note that in the case `𝕜 = ℝ` this is a bilinear form. -/
432433
@[simps]
433434
def sesq_form_of_inner : E →ₗ[𝕜] E →ₗ⋆[𝕜] 𝕜 :=
434435
linear_map.mk₂'ₛₗ (ring_hom.id 𝕜) (star_ring_end _)
@@ -438,15 +439,6 @@ linear_map.mk₂'ₛₗ (ring_hom.id 𝕜) (star_ring_end _)
438439
(λ x y z, inner_add_left)
439440
(λ r x y, inner_smul_left)
440441

441-
/-- The real inner product as a bilinear form. -/
442-
@[simps]
443-
def bilin_form_of_real_inner : bilin_form ℝ F :=
444-
{ bilin := inner,
445-
bilin_add_left := λ x y z, inner_add_left,
446-
bilin_smul_left := λ a x y, inner_smul_left,
447-
bilin_add_right := λ x y z, inner_add_right,
448-
bilin_smul_right := λ a x y, inner_smul_right }
449-
450442
/-- An inner product with a sum on the left. -/
451443
lemma sum_inner {ι : Type*} (s : finset ι) (f : ι → E) (x : E) :
452444
⟪∑ i in s, f i, x⟫ = ∑ i in s, ⟪f i, x⟫ := (sesq_form_of_inner x).map_sum

src/analysis/inner_product_space/symmetric.lean

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,12 @@ section real
4949

5050
variables
5151

52-
-- Todo: Generalize this to `is_R_or_C`.
53-
/-- An operator `T` on a `ℝ`-inner product space is symmetric if and only if it is
54-
`bilin_form.is_self_adjoint` with respect to the bilinear form given by the inner product. -/
55-
lemma is_symmetric_iff_bilin_form (T : E' →ₗ[ℝ] E') :
56-
is_symmetric T ↔ bilin_form_of_real_inner.is_self_adjoint T :=
57-
by simp [is_symmetric, bilin_form.is_self_adjoint, bilin_form.is_adjoint_pair]
52+
/-- An operator `T` on an inner product space is symmetric if and only if it is
53+
`linear_map.is_self_adjoint` with respect to the sesquilinear form given by the inner product. -/
54+
lemma is_symmetric_iff_sesq_form (T : E →ₗ[𝕜] E) :
55+
T.is_symmetric ↔
56+
@linear_map.is_self_adjoint 𝕜 E _ _ _ (star_ring_end 𝕜) sesq_form_of_inner T :=
57+
⟨λ h x y, (h y x).symm, λ h x y, (h y x).symm⟩
5858

5959
end real
6060

src/linear_algebra/sesquilinear_form.lean

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -387,7 +387,8 @@ variables [comm_semiring R]
387387
variables [add_comm_monoid M] [module R M]
388388
variables [add_comm_monoid M₁] [module R M₁]
389389
variables [add_comm_monoid M₂] [module R M₂]
390-
variables {B F : M →ₗ[R] M →ₗ[R] R} {B' : M₁ →ₗ[R] M₁ →ₗ[R] R} {B'' : M₂ →ₗ[R] M₂ →ₗ[R] R}
390+
variables {I : R →+* R}
391+
variables {B F : M →ₗ[R] M →ₛₗ[I] R} {B' : M₁ →ₗ[R] M₁ →ₛₗ[I] R} {B'' : M₂ →ₗ[R] M₂ →ₛₗ[I] R}
391392
variables {f f' : M →ₗ[R] M₁} {g g' : M₁ →ₗ[R] M}
392393

393394
variables (B B' f g)
@@ -455,7 +456,8 @@ section add_comm_monoid
455456

456457
variables [comm_semiring R]
457458
variables [add_comm_monoid M] [module R M]
458-
variables (B F : M →ₗ[R] M →ₗ[R] R)
459+
variables {I : R →+* R}
460+
variables (B F : M →ₗ[R] M →ₛₗ[I] R)
459461

460462
/-- The condition for an endomorphism to be "self-adjoint" with respect to a pair of bilinear forms
461463
on the underlying module. In the case that these two forms are identical, this is the usual concept

0 commit comments

Comments
 (0)