@@ -1695,31 +1695,33 @@ by simp_rw [sum_inner, inner_sum, real_inner_smul_left, real_inner_smul_right,
1695
1695
h₁, h₂, zero_mul, mul_zero, finset.sum_const_zero, zero_add, zero_sub, finset.mul_sum,
1696
1696
neg_div, finset.sum_div, mul_div_assoc, mul_assoc]
1697
1697
1698
+ variables (𝕜)
1699
+
1698
1700
/-- The inner product as a sesquilinear map. -/
1699
1701
def innerₛₗ : E →ₗ⋆[𝕜] E →ₗ[𝕜] 𝕜 :=
1700
1702
linear_map.mk₂'ₛₗ _ _ (λ v w, ⟪v, w⟫) inner_add_left (λ _ _ _, inner_smul_left _ _ _)
1701
1703
inner_add_right (λ _ _ _, inner_smul_right _ _ _)
1702
1704
1703
- @[simp] lemma innerₛₗ_apply_coe (v : E) : (innerₛₗ v : E → 𝕜 ) = λ w, ⟪v, w⟫ := rfl
1705
+ @[simp] lemma innerₛₗ_apply_coe (v : E) : ⇑ (innerₛₗ 𝕜 v ) = λ w, ⟪v, w⟫ := rfl
1704
1706
1705
- @[simp] lemma innerₛₗ_apply (v w : E) : innerₛₗ v w = ⟪v, w⟫ := rfl
1707
+ @[simp] lemma innerₛₗ_apply (v w : E) : innerₛₗ 𝕜 v w = ⟪v, w⟫ := rfl
1706
1708
1707
1709
/-- The inner product as a continuous sesquilinear map. Note that `to_dual_map` (resp. `to_dual`)
1708
1710
in `inner_product_space.dual` is a version of this given as a linear isometry (resp. linear
1709
1711
isometric equivalence). -/
1710
1712
def innerSL : E →L⋆[𝕜] E →L[𝕜] 𝕜 :=
1711
- linear_map.mk_continuous₂ innerₛₗ 1
1713
+ linear_map.mk_continuous₂ ( innerₛₗ 𝕜) 1
1712
1714
(λ x y, by simp only [norm_inner_le_norm, one_mul, innerₛₗ_apply])
1713
1715
1714
- @[simp] lemma innerSL_apply_coe (v : E) : (innerSL v : E → 𝕜 ) = λ w, ⟪v, w⟫ := rfl
1716
+ @[simp] lemma innerSL_apply_coe (v : E) : ⇑ (innerSL 𝕜 v ) = λ w, ⟪v, w⟫ := rfl
1715
1717
1716
- @[simp] lemma innerSL_apply (v w : E) : innerSL v w = ⟪v, w⟫ := rfl
1718
+ @[simp] lemma innerSL_apply (v w : E) : innerSL 𝕜 v w = ⟪v, w⟫ := rfl
1717
1719
1718
1720
/-- `innerSL` is an isometry. Note that the associated `linear_isometry` is defined in
1719
1721
`inner_product_space.dual` as `to_dual_map`. -/
1720
- @[simp] lemma innerSL_apply_norm { x : E} : ‖( innerSL x : E →L[𝕜] 𝕜) ‖ = ‖x‖ :=
1722
+ @[simp] lemma innerSL_apply_norm ( x : E) : ‖innerSL 𝕜 x ‖ = ‖x‖ :=
1721
1723
begin
1722
- refine le_antisymm ((innerSL x : E →L[𝕜] 𝕜 ).op_norm_le_bound (norm_nonneg _)
1724
+ refine le_antisymm ((innerSL 𝕜 x ).op_norm_le_bound (norm_nonneg _)
1723
1725
(λ y, norm_inner_le_norm _ _)) _,
1724
1726
cases eq_or_lt_of_le (norm_nonneg x) with h h,
1725
1727
{ have : x = 0 := norm_eq_zero.mp (eq.symm h),
@@ -1728,16 +1730,18 @@ begin
1728
1730
calc ‖x‖ * ‖x‖ = ‖x‖ ^ 2 : by ring
1729
1731
... = re ⟪x, x⟫ : norm_sq_eq_inner _
1730
1732
... ≤ abs ⟪x, x⟫ : re_le_abs _
1731
- ... = ‖innerSL x x ‖ : by { rw [←is_R_or_C.norm_eq_abs], refl }
1732
- ... ≤ ‖innerSL x‖ * ‖x‖ : (innerSL x : E →L[𝕜] 𝕜 ).le_op_norm _ }
1733
+ ... = ‖⟪x, x⟫ ‖ : by rw [←is_R_or_C.norm_eq_abs]
1734
+ ... ≤ ‖innerSL 𝕜 x‖ * ‖x‖ : (innerSL 𝕜 x ).le_op_norm _ }
1733
1735
end
1734
1736
1735
1737
/-- The inner product as a continuous sesquilinear map, with the two arguments flipped. -/
1736
1738
def innerSL_flip : E →L[𝕜] E →L⋆[𝕜] 𝕜 :=
1737
1739
@continuous_linear_map.flipₗᵢ' 𝕜 𝕜 𝕜 E E 𝕜 _ _ _ _ _ _ _ _ _ (ring_hom.id 𝕜) (star_ring_end 𝕜) _ _
1738
- innerSL
1740
+ (innerSL 𝕜)
1741
+
1742
+ @[simp] lemma innerSL_flip_apply (x y : E) : innerSL_flip 𝕜 x y = ⟪y, x⟫ := rfl
1739
1743
1740
- @[simp] lemma innerSL_flip_apply (x y : E) : innerSL_flip x y = ⟪y, x⟫ := rfl
1744
+ variables {𝕜}
1741
1745
1742
1746
namespace continuous_linear_map
1743
1747
@@ -1748,10 +1752,10 @@ as a continuous linear map. -/
1748
1752
def to_sesq_form : (E →L[𝕜] E') →L[𝕜] E' →L⋆[𝕜] E →L[𝕜] 𝕜 :=
1749
1753
↑((continuous_linear_map.flipₗᵢ' E E' 𝕜
1750
1754
(star_ring_end 𝕜) (ring_hom.id 𝕜)).to_continuous_linear_equiv) ∘L
1751
- (continuous_linear_map.compSL E E' (E' →L⋆[𝕜] 𝕜) (ring_hom.id 𝕜) (ring_hom.id 𝕜) innerSL_flip)
1755
+ (continuous_linear_map.compSL E E' (E' →L⋆[𝕜] 𝕜) (ring_hom.id 𝕜) (ring_hom.id 𝕜) ( innerSL_flip 𝕜) )
1752
1756
1753
1757
@[simp] lemma to_sesq_form_apply_coe (f : E →L[𝕜] E') (x : E') :
1754
- to_sesq_form f x = (innerSL x).comp f := rfl
1758
+ to_sesq_form f x = (innerSL 𝕜 x).comp f := rfl
1755
1759
1756
1760
lemma to_sesq_form_apply_norm_le {f : E →L[𝕜] E'} {v : E'} : ‖to_sesq_form f v‖ ≤ ‖f‖ * ‖v‖ :=
1757
1761
begin
@@ -2287,7 +2291,7 @@ by simp [disjoint_iff, K.inf_orthogonal_eq_bot]
2287
2291
2288
2292
/-- `Kᗮ` can be characterized as the intersection of the kernels of the operations of
2289
2293
inner product with each of the elements of `K`. -/
2290
- lemma orthogonal_eq_inter : Kᗮ = ⨅ v : K, linear_map.ker (innerSL (v:E) : E →L[𝕜] 𝕜 ) :=
2294
+ lemma orthogonal_eq_inter : Kᗮ = ⨅ v : K, linear_map.ker (innerSL 𝕜 (v : E) ) :=
2291
2295
begin
2292
2296
apply le_antisymm,
2293
2297
{ rw le_infi_iff,
@@ -2302,7 +2306,7 @@ end
2302
2306
lemma submodule.is_closed_orthogonal : is_closed (Kᗮ : set E) :=
2303
2307
begin
2304
2308
rw orthogonal_eq_inter K,
2305
- have := λ v : K, continuous_linear_map.is_closed_ker (innerSL (v:E) : E →L[𝕜] 𝕜 ),
2309
+ have := λ v : K, continuous_linear_map.is_closed_ker (innerSL 𝕜 (v : E) ),
2306
2310
convert is_closed_Inter this ,
2307
2311
simp only [submodule.infi_coe],
2308
2312
end
@@ -2397,7 +2401,7 @@ protected lemma continuous_inner :
2397
2401
continuous (uncurry inner : completion E × completion E → 𝕜) :=
2398
2402
begin
2399
2403
let inner' : E →+ E →+ 𝕜 :=
2400
- { to_fun := λ x, (innerₛₗ x).to_add_monoid_hom,
2404
+ { to_fun := λ x, (innerₛₗ 𝕜 x).to_add_monoid_hom,
2401
2405
map_zero' := by ext x; exact inner_zero_left _,
2402
2406
map_add' := λ x y, by ext z; exact inner_add_left _ _ _ },
2403
2407
have : continuous (λ p : E × E, inner' p.1 p.2 ) := continuous_inner,
0 commit comments