Hölder triples #
This file defines a new class: ENNReal.HolderTriple which takes arguments p q r : ℝ≥0∞,
with r marked as a semiOutParam, and states that p⁻¹ + q⁻¹ = r⁻¹. This is exactly the
condition for which Hölder's inequality is valid (see MeasureTheory.MemLp.smul).
This allows us to declare a heterogeneous scalar multiplication (HSMul) instance on
MeasureTheory.Lp spaces.
In this file we provide many convenience lemmas in the presence of a HolderTriple instance.
All these are easily provable from facts about ℝ≥0∞, but it's convenient not to be forced
to reprove them each time.
For convenience we also define ENNReal.HolderConjugate (with arguments p q) as an
abbreviation for ENNReal.HolderTriple p q 1.
A class stating that p q r : ℝ≥0∞ satisfy p⁻¹ + q⁻¹ = r⁻¹.
This is exactly the condition for which Hölder's inequality is valid
(see MeasureTheory.MemLp.smul).
When r := 1, one generally says that p q are Hölder conjugate.
This class exists so that we can define a heterogeneous scalar multiplication
on MeasureTheory.Lp, and this is why r must be marked as a
semiOutParam. We don't mark it as an outParam because this would
prevent Lean from using HolderTriple p q r and HolderTriple p q r'
within a single proof, as may be occasionally convenient.
Instances
An abbreviation for ENNReal.HolderTriple p q 1, this class states p⁻¹ + q⁻¹ = 1.
Equations
- p.HolderConjugate q = p.HolderTriple q 1
Instances For
Hölder triples #
This is not marked as an instance so that Lean doesn't always find this one
and a more canonical value of r can be used.
assumes q ≠ 0 instead of r ≠ 0.