The continuous functional calculus for non-unital algebras #
This file defines a generic API for the continuous functional calculus in non-unital algebras
which is suitable in a wide range of settings. The design is intended to match as closely as
possible that for unital algebras in Topology.ContinuousFunction.FunctionalCalculus. Changes to
either file should be mirrored in its counterpart whenever possible. The underlying reasons for the
design decisions in the unital case apply equally in the non-unital case. See the module
documentation in that file for more information.
A continuous functional calculus for an element a : A in a non-unital topological R-algebra is
a continuous extension of the polynomial functional calculus (i.e., Polynomial.aeval) for
polynomials with no constant term to continuous R-valued functions on quasispectrum R a which
vanish at zero. More precisely, it is a continuous star algebra homomorphism
C(quasispectrum R a, R)₀ →⋆ₙₐ[R] A that sends (ContinuousMap.id R).restrict (quasispectrum R a)
to a. In all cases of interest (e.g., when quasispectrum R a is compact and R is ℝ≥0, ℝ,
or ℂ), this is sufficient to uniquely determine the continuous functional calculus which is
encoded in the UniqueNonUnitalContinuousFunctionalCalculus class.
Main declarations #
NonUnitalContinuousFunctionalCalculus R (p : A → Prop): a class stating that everya : Asatisfyingp ahas a non-unital star algebra homomorphism from the continuousR-valued functions on theR-quasispectrum ofavanishing at zero into the algebraA. This map is a closed embedding, and satisfies the spectral mapping theorem.cfcₙHom : p a → C(quasispectrum R a, R)₀ →⋆ₐ[R] A: the underlying non-unital star algebra homomorphism for an element satisfying propertyp.cfcₙ : (R → R) → A → A: an unbundled version ofcfcₙHomwhich takes the junk value0whencfcₙHomis not defined.
Main theorems #
A non-unital star R-algebra A has a continuous functional calculus for elements
satisfying the property p : A → Prop if
- for every such element
a : Athere is a non-unital star algebra homomorphismcfcₙHom : C(quasispectrum R a, R)₀ →⋆ₙₐ[R] Asending the (restriction of) the identity map toa. cfcₙHomis a closed embedding for which the quasispectrum of the image of functionfis its range.cfcₙHompreserves the propertyp.
The property p is marked as an outParam so that the user need not specify it. In practice,
- for
R := ℂ, we choosep := IsStarNormal, - for
R := ℝ, we choosep := IsSelfAdjoint, - for
R := ℝ≥0, we choosep := (0 ≤ ·).
Instead of directly providing the data we opt instead for a Prop class. In all relevant cases,
the continuous functional calculus is uniquely determined, and utilizing this approach
prevents diamonds or problems arising from multiple instances.
- exists_cfc_of_predicate : ∀ (a : A), p a → ∃ (φ : ContinuousMapZero (↑(quasispectrum R a)) R →⋆ₙₐ[R] A), ClosedEmbedding ⇑φ ∧ φ { toContinuousMap := ContinuousMap.restrict (quasispectrum R a) (ContinuousMap.id R), map_zero' := ⋯ } = a ∧ (∀ (f : ContinuousMapZero (↑(quasispectrum R a)) R), quasispectrum R (φ f) = Set.range ⇑f) ∧ ∀ (f : ContinuousMapZero (↑(quasispectrum R a)) R), p (φ f)
Instances
A class guaranteeing that the non-unital continuous functional calculus is uniquely determined
by the properties that it is a continuous non-unital star algebra homomorphism mapping the
(restriction of) the identity to a. This is the necessary tool used to establish cfcₙHom_comp
and the more common variant cfcₙ_comp.
This class will have instances in each of the common cases ℂ, ℝ and ℝ≥0 as a consequence of
the Stone-Weierstrass theorem.
- eq_of_continuous_of_map_id : ∀ (s : Set R) [inst : CompactSpace ↑s] [inst : Zero ↑s] (h0 : ↑0 = 0) (φ ψ : ContinuousMapZero (↑s) R →⋆ₙₐ[R] A), Continuous ⇑φ → Continuous ⇑ψ → φ { toContinuousMap := ContinuousMap.restrict s (ContinuousMap.id R), map_zero' := h0 } = ψ { toContinuousMap := ContinuousMap.restrict s (ContinuousMap.id R), map_zero' := h0 } → φ = ψ
- compactSpace_quasispectrum : ∀ (a : A), CompactSpace ↑(quasispectrum R a)
Instances
The non-unital star algebra homomorphism underlying a instance of the continuous functional calculus for non-unital algebras; a version for continuous functions on the quasispectrum.
In this case, the user must supply the fact that a satisfies the predicate p.
While NonUnitalContinuousFunctionalCalculus is stated in terms of these homomorphisms, in practice
the user should instead prefer cfcₙ over cfcₙHom.
Equations
- cfcₙHom ha = Exists.choose ⋯
Instances For
The spectral mapping theorem for the non-unital continuous functional calculus.
This is the continuous functional calculus of an element a : A in a non-unital algebra
applied to bare functions. When either a does not satisfy the predicate p (i.e., a is not
IsStarNormal, IsSelfAdjoint, or 0 ≤ a when R is ℂ, ℝ, or ℝ≥0, respectively), or when
f : R → R is not continuous on the quasispectrum of a or f 0 ≠ 0, then cfc f a returns the
junk value 0.
This is the primary declaration intended for widespread use of the continuous functional calculus
for non-unital algebras, and all the API applies to this declaration. For more information, see the
module documentation for Topology.ContinuousFunction.FunctionalCalculus.
Instances For
A tactic used to automatically discharge goals relating to the continuous functional calculus,
specifically concerning whether f 0 = 0.
Equations
- cfcZeroTac = Lean.ParserDescr.node `cfcZeroTac 1024 (Lean.ParserDescr.nonReservedSymbol "cfc_zero_tac" false)
Instances For
The spectral mapping theorem for the non-unital continuous functional calculus.