mathlib documentation

analysis.normed_space.M_structure

M-structure #

A projection P on a normed space X is said to be an L-projection (is_Lprojection) if, for all x in X, $\|x\| = \|P x\| + \|(1 - P) x\|$.

A projection P on a normed space X is said to be an M-projection if, for all x in X, $\|x\| = max(\|P x\|,\|(1 - P) x\|)$.

The L-projections on X form a Boolean algebra (is_Lprojection.subtype.boolean_algebra).

TODO (Motivational background) #

The M-projections on a normed space form a Boolean algebra.

The range of an L-projection on a normed space X is said to be an L-summand of X. The range of an M-projection is said to be an M-summand of X.

When X is a Banach space, the Boolean algebra of L-projections is complete. Let X be a normed space with dual X^*. A closed subspace M of X is said to be an M-ideal if the topological annihilator M^โˆ˜ is an L-summand of X^*.

M-ideal, M-summands and L-summands were introduced by Alfsen and Effros in [AE72] to study the structure of general Banach spaces. When A is a JB*-triple, the M-ideals of A are exactly the norm-closed ideals of A. When A is a JBW*-triple with predual X, the M-summands of A are exactly the weak*-closed ideals, and their pre-duals can be identified with the L-summands of X. In the special case when A is a C*-algebra, the M-ideals are exactly the norm-closed two-sided ideals of A, when A is also a W*-algebra the M-summands are exactly the weak*-closed two-sided ideals of A.

Implementation notes #

The approach to showing that the L-projections form a Boolean algebra is inspired by measure_theory.measurable_space.

Instead of using P : X โ†’L[๐•œ] X to represent projections, we use an arbitrary ring M with a faithful action on X. continuous_linear_map.apply_module can be used to recover the X โ†’L[๐•œ] X special case.

References #

Tags #

M-summand, M-projection, L-summand, L-projection, M-ideal, M-structure

structure is_Lprojection (X : Type u_1) [normed_group X] {M : Type} [ring M] [module M X] (P : M) :
Prop

A projection on a normed space X is said to be an L-projection if, for all x in X, $\|x\| = \|P x\| + \|(1 - P) x\|$.

Note that we write P โ€ข x instead of P x for reasons described in the module docstring.

structure is_Mprojection (X : Type u_1) [normed_group X] {M : Type} [ring M] [module M X] (P : M) :
Prop

A projection on a normed space X is said to be an M-projection if, for all x in X, $\|x\| = max(\|P x\|,\|(1 - P) x\|)$.

Note that we write P โ€ข x instead of P x for reasons described in the module docstring.

theorem is_Lprojection.Lcomplement {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] {P : M} (h : is_Lprojection X P) :
theorem is_Lprojection.Lcomplement_iff {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] (P : M) :
theorem is_Lprojection.commute {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] {P Q : M} (hโ‚ : is_Lprojection X P) (hโ‚‚ : is_Lprojection X Q) :
theorem is_Lprojection.mul {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] {P Q : M} (hโ‚ : is_Lprojection X P) (hโ‚‚ : is_Lprojection X Q) :
theorem is_Lprojection.join {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] {P Q : M} (hโ‚ : is_Lprojection X P) (hโ‚‚ : is_Lprojection X Q) :
is_Lprojection X (P + Q - P * Q)
@[protected, instance]
def is_Lprojection.subtype.has_compl {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] :
Equations
@[simp]
theorem is_Lprojection.coe_compl {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] (P : {P // is_Lprojection X P}) :
@[protected, instance]
def is_Lprojection.subtype.has_inf {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] :
Equations
@[simp]
theorem is_Lprojection.coe_inf {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] (P Q : {P // is_Lprojection X P}) :
@[protected, instance]
def is_Lprojection.subtype.has_sup {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] :
Equations
@[simp]
theorem is_Lprojection.coe_sup {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] (P Q : {P // is_Lprojection X P}) :
@[protected, instance]
def is_Lprojection.subtype.has_sdiff {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] :
Equations
@[simp]
theorem is_Lprojection.coe_sdiff {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] (P Q : {P // is_Lprojection X P}) :
โ†‘(P \ Q) = โ†‘P * (1 - โ†‘Q)
@[protected, instance]
def is_Lprojection.subtype.partial_order {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] :
Equations
theorem is_Lprojection.le_def {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] (P Q : {P // is_Lprojection X P}) :
@[protected, instance]
def is_Lprojection.subtype.has_zero {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] :
Equations
@[simp]
theorem is_Lprojection.coe_zero {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] :
@[protected, instance]
def is_Lprojection.subtype.has_one {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] :
Equations
@[simp]
theorem is_Lprojection.coe_one {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] :
@[protected, instance]
def is_Lprojection.subtype.bounded_order {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] :
Equations
@[simp]
theorem is_Lprojection.coe_bot {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] :
@[simp]
theorem is_Lprojection.coe_top {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] [has_faithful_smul M X] :
theorem is_Lprojection.compl_mul {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] {P : {P // is_Lprojection X P}} {Q : M} :
theorem is_Lprojection.mul_compl_self {X : Type u_1} [normed_group X] {M : Type} [ring M] [module M X] {P : {P // is_Lprojection X P}} :