OAI/Analysis/Brenier/Quantiles.lean
44 declarations, 0 contain sorry, 0 declared as axioms
- lemma
OAI.Problem358.unique_monotone_inverse_lt_iffline 16Source documentation
Comparison with the unique inverse point of a monotone real function.
lemma unique_monotone_inverse_lt_iff {F : ℝ → ℝ} (hF : Monotone F) {t x : ℝ} (hx : F x = t) (huniq : ∀ y, F y = t → y = x) (q : ℝ) : x < q ↔ t < F q := by … - theorem
OAI.Problem358.exists_measurable_monotone_inverseline 36Source documentation
Parameter-dependent monotone inverses are measurable whenever their CDF sections and selected levels are measurable. Unique fibers remove any need for a measurable-choice theorem.
theorem exists_measurable_monotone_inverse {A : Type*} [MeasurableSpace A] (F : A → ℝ → ℝ) (t : A → ℝ) (hmono : ∀ a, Monotone (F a)) (hsection : ∀ q : ℝ, Measurable (fun a => F a q)) (ht : Measurable t) (hex : ∀ a, ∃! x : ℝ, F a x = t a) : ∃ Q : A → ℝ, Measurable Q ∧ ∀ a, F a (Q a) = t a := by … - lemma
OAI.Problem358.inverse_points_strictMonoline 55Source documentation
Inverse points of a monotone function are necessarily ordered with their levels, even if the original function has flat regions away from those fibers.
lemma inverse_points_strictMono {F : ℝ → ℝ} (hF : Monotone F) {S : Set ℝ} {Q : S → ℝ} (hQ : ∀ t, F (Q t) = (t : ℝ)) : StrictMono Q := by … - lemma
OAI.Problem358.exists_unique_monotone_inverse_of_intervalline 67Source documentation
A continuous strictly increasing interval reaches each intermediate level at a unique point, provided the ambient extension remains monotone.
lemma exists_unique_monotone_inverse_of_interval {F : ℝ → ℝ} {a b t : ℝ} (hab : a ≤ b) (hcont : ContinuousOn F (Icc a b)) (hmono : Monotone F) (hstrict : StrictMonoOn F (Icc a b)) (ht : t ∈ Ioo (F a) (F b)) : ∃! x : ℝ, F x = t := by … - lemma
OAI.Problem358.continuousAt_monotone_inverseline 89Source documentation
A local inverse of a monotone real function is continuous at every level whose fiber is a singleton. No differentiability or strict global monotonicity is required.
lemma continuousAt_monotone_inverse {F Q : ℝ → ℝ} {t : ℝ} (hmono : Monotone F) (hlocal : ∀ᶠ s in 𝓝 t, F (Q s) = s) (huniq : ∀ x, F x = t → x = Q t) : ContinuousAt Q t := by … - lemma
OAI.Problem358.hasDerivAt_monotone_inverseline 115Source documentation
The reciprocal-density derivative formula for a local monotone inverse.
lemma hasDerivAt_monotone_inverse {F Q : ℝ → ℝ} {t c : ℝ} (hmono : Monotone F) (hlocal : ∀ᶠ s in 𝓝 t, F (Q s) = s) (huniq : ∀ x, F x = t → x = Q t) (hderiv : HasDerivAt F c (Q t)) (hc : c ≠ 0) : HasDerivAt Q c⁻¹ t := by … - lemma
OAI.Problem358.unique_monotone_inverse_le_iffline 123 - lemma
OAI.Problem358.volume_Iic_inter_unitIntervalline 136 - theorem
OAI.Problem358.map_inverse_cdf_eqline 156Source documentation
A measurable inverse of a probability CDF transports unit-interval Lebesgue measure to the probability law. This is the one-dimensional law identity used in triangular quantile constructions.
theorem map_inverse_cdf_eq (μ : Measure ℝ) [IsProbabilityMeasure μ] {Q : ℝ → ℝ} (hQ : Measurable Q) (hsolve : ∀ t ∈ Ioo (0 : ℝ) 1, ProbabilityTheory.cdf μ (Q t) = t) (huniq : ∀ t ∈ Ioo (0 : ℝ) 1, ∀ x, ProbabilityTheory.cdf μ x = t → x = Q t) : Measure.map Q (volume.restrict (Ioo (0 : ℝ) 1)) = μ := by … - theorem
OAI.Problem358.exists_measurable_cdf_transportline 185Source documentation
A probability law with unique inverse CDF points at every level in
(0,1)has a measurable quantile transport, continuous at every such level.theorem exists_measurable_cdf_transport (μ : Measure ℝ) [IsProbabilityMeasure μ] (hex : ∀ t ∈ Ioo (0 : ℝ) 1, ∃! x : ℝ, ProbabilityTheory.cdf μ x = t) : ∃ Q : ℝ → ℝ, Measurable Q ∧ Measure.map Q (volume.restrict (Ioo (0 : ℝ) 1)) = μ ∧ (∀ t ∈ Ioo (0 : ℝ) 1, ProbabilityTheory.cdf μ (Q t) = t) ∧ ∀ t ∈ Ioo (0 : ℝ) 1, ContinuousAt Q t := by … - theorem
OAI.Problem358.exists_measurable_cdf_family_transportline 217Source documentation
Jointly measurable quantiles for a family of one-dimensional probability laws. Only measurability of each CDF section is needed in the parameter.
theorem exists_measurable_cdf_family_transport {A : Type*} [MeasurableSpace A] (κ : A → Measure ℝ) [∀ a, IsProbabilityMeasure (κ a)] (hsection : ∀ q : ℝ, Measurable (fun a => ProbabilityTheory.cdf (κ a) q)) (hex : ∀ a t, t ∈ Ioo (0 : ℝ) 1 → ∃! x : ℝ, ProbabilityTheory.cdf (κ a) x = t) : ∃ Q : A × ℝ → ℝ, Measurable Q ∧ (∀ a, Measure.map (fun t => Q (a, t)) (volume.restrict (Ioo (0 : ℝ) 1)) = κ a) ∧ (∀ a t, t ∈ Ioo (0 : ℝ) 1 → ProbabilityTheory.cdf (κ a) (Q (a, t)) = t) ∧ ∀ a t, t ∈ Ioo (0 : ℝ) 1 → ContinuousAt (fun s => Q (a, s)) t := by … - lemma
OAI.Problem358.measurable_cdf_kernel_sectionline 260Source documentation
CDF sections of a real-valued Markov kernel are measurable.
lemma measurable_cdf_kernel_section {A : Type*} [MeasurableSpace A] (κ : ProbabilityTheory.Kernel A ℝ) [ProbabilityTheory.IsMarkovKernel κ] (q : ℝ) : Measurable (fun a => ProbabilityTheory.cdf (κ a) q) := by … - theorem
OAI.Problem358.exists_measurable_cdf_kernel_transportline 268Source documentation
Kernel specialization: unique interior CDF fibers suffice for a jointly measurable sampler with the exact conditional law and continuous fibers.
theorem exists_measurable_cdf_kernel_transport {A : Type*} [MeasurableSpace A] (κ : ProbabilityTheory.Kernel A ℝ) [ProbabilityTheory.IsMarkovKernel κ] (hex : ∀ a t, t ∈ Ioo (0 : ℝ) 1 → ∃! x : ℝ, ProbabilityTheory.cdf (κ a) x = t) : ∃ Q : A × ℝ → ℝ, Measurable Q ∧ (∀ a, Measure.map (fun t => Q (a, t)) (volume.restrict (Ioo (0 : ℝ) 1)) = κ a) ∧ (∀ a t, t ∈ Ioo (0 : ℝ) 1 → ProbabilityTheory.cdf (κ a) (Q (a, t)) = t) ∧ ∀ a t, t ∈ Ioo (0 : ℝ) 1 → ContinuousAt (fun s => Q (a, s)) t := … - def
OAI.Problem358.KernelQuantile.quantileline 299Source documentation
Ordered generalized inverse of the kernel's conditional distribution function.
def quantile (κ : Kernel X I) (a : X) (t : I) : I := …
- lemma
OAI.Problem358.KernelQuantile.measurable_quantileline 302 - lemma
OAI.Problem358.KernelQuantile.monotone_quantileline 331 - lemma
OAI.Problem358.KernelQuantile.quantile_le_iffline 339Source documentation
The defining order equivalence, including the endpoints of the parameter interval.
lemma quantile_le_iff (κ : Kernel X I) [IsMarkovKernel κ] (a : X) (ξ x : I) : quantile κ a ξ ≤ x ↔ (ξ : ℝ) ≤ (κ a).real (Icc 0 x) := by …Mentions: OAI.Problem358.KernelQuantile.quantile
- lemma
OAI.Problem358.KernelQuantile.map_quantileline 369 - theorem
OAI.Problem358.KernelQuantile.exists_monotone_unitInterval_samplerline 382Source documentation
Every unit-interval probability kernel has a jointly measurable monotone sampler.
theorem exists_monotone_unitInterval_sampler (κ : Kernel X I) [IsMarkovKernel κ] : ∃ (f : X → I → I), Measurable (uncurry f) ∧ (∀ a, Monotone (f a)) ∧ ∀ a, volume.map (f a) = κ a := … - lemma
OAI.Problem358.KernelQuantile.quantile_eq_of_cdf_eqline 388Source documentation
At a strictly increasing conditional CDF, the quantile is its ordinary inverse.
lemma quantile_eq_of_cdf_eq (κ : Kernel X I) [IsMarkovKernel κ] (a : X) (hstrict : StrictMono (fun x : I => (κ a).real (Icc 0 x))) {t x : I} (hx : (κ a).real (Icc 0 x) = (t : ℝ)) : quantile κ a t = x := by …Mentions: OAI.Problem358.KernelQuantile.quantile
- lemma
OAI.Problem358.KernelQuantile.quantile_cdfline 398 - def
OAI.Problem358.KernelQuantile.toUnitline 404Source documentation
Clamp affine coordinates into the unit interval.
def toUnit (l u x : ℝ) : I := …
- def
OAI.Problem358.KernelQuantile.fromUnitline 408Source documentation
Undo affine unit-interval coordinates.
def fromUnit (l u : ℝ) (t : I) : ℝ := l + (u - l) * (t : ℝ)
- lemma
OAI.Problem358.KernelQuantile.continuous_toUnitline 410 - lemma
OAI.Problem358.KernelQuantile.continuous_fromUnitline 413 - lemma
OAI.Problem358.KernelQuantile.monotone_fromUnitline 417 - lemma
OAI.Problem358.KernelQuantile.fromUnit_toUnitline 423 - theorem
OAI.Problem358.KernelQuantile.exists_monotone_real_samplerline 437Source documentation
Ordered conditional sampling is available uniformly for any kernel supported in a fixed nondegenerate bounded real interval.
theorem exists_monotone_real_sampler (κ : Kernel X ℝ) [IsMarkovKernel κ] (l u : ℝ) (hlu : l < u) (hsupp : ∀ a, ∀ᵐ x ∂κ a, x ∈ Icc l u) : ∃ f : X → I → ℝ, Measurable (uncurry f) ∧ (∀ a, Monotone (f a)) ∧ (∀ a, volume.map (f a) = κ a) ∧ (∀ a t, f a t ∈ Icc l u) := by … - theorem
OAI.Problem358.KernelQuantile.exists_monotone_density_samplerline 470Source documentation
A jointly measurable family of normalized bounded densities admits ordered conditional samples. This is the law-producing part of the triangular quantile construction.
theorem exists_monotone_density_sampler (p : X → ℝ → ℝ≥0∞) (hp : Measurable (uncurry p)) (hnorm : ∀ a, ∫⁻ x, p a x = 1) (l u : ℝ) (hlu : l < u) (hsupp : ∀ a x, x ∉ Icc l u → p a x = 0) : ∃ f : X → I → ℝ, Measurable (uncurry f) ∧ (∀ a, Monotone (f a)) ∧ (∀ a, volume.map (f a) = volume.withDensity (p a)) ∧ (∀ a t, f a t ∈ Icc l u) := by … - lemma
OAI.Problem358.KernelQuantile.cdf_quantileline 496Source documentation
For a continuous strictly increasing CDF with no endpoint atom, sampling inverts that CDF in both directions.
lemma cdf_quantile (κ : Kernel X I) [IsMarkovKernel κ] (a : X) (hstrict : StrictMono (fun x : I => (κ a).real (Icc 0 x))) (hcont : Continuous (fun x : I => (κ a).real (Icc 0 x))) (hzero : (κ a).real (Icc 0 (0 : I)) = 0) (t : I) : (κ a).real (Icc 0 (quantile κ a t)) = (t : ℝ) := by …Mentions: OAI.Problem358.KernelQuantile.quantile
- lemma
OAI.Problem358.KernelQuantile.strictMono_quantileline 513 - def
OAI.Problem358.PositiveIntervalDensity.clippedCDFline 535Source documentation
The cumulative integral is clamped to its genuine support interval.
def clippedCDF (D : PositiveIntervalDensity) (x : ℝ) : ℝ := …
Mentions: OAI.Problem358.PositiveIntervalDensity
- lemma
OAI.Problem358.PositiveIntervalDensity.clippedCDF_of_memline 538 - lemma
OAI.Problem358.PositiveIntervalDensity.clippedCDF_of_le_lowerline 542 - lemma
OAI.Problem358.PositiveIntervalDensity.clippedCDF_of_upper_leline 547 - lemma
OAI.Problem358.PositiveIntervalDensity.clippedCDF_monotoneline 552 - lemma
OAI.Problem358.PositiveIntervalDensity.clippedCDF_eq_iteline 559 - lemma
OAI.Problem358.PositiveIntervalDensity.existsUnique_clippedCDF_eqline 568 - lemma
OAI.Problem358.PositiveIntervalDensity.measurable_clippedCDF_sectionline 587 - theorem
OAI.Problem358.PositiveIntervalDensity.exists_measurable_quantile_familyline 600Source documentation
A family of positive interval densities admits a jointly measurable family of exact quantile samplers. Endpoints and cumulative-integral sections must be measurable in the parameter; no parameter differentiability is required.
theorem exists_measurable_quantile_family {A : Type*} [MeasurableSpace A] (D : A → PositiveIntervalDensity) (hlower : Measurable (fun a => (D a).lower)) (hupper : Measurable (fun a => (D a).upper)) (hcdf : ∀ q : ℝ, Measurable (fun a => (D a).cdf q)) : ∃ Q : A × ℝ → ℝ, Measurable Q ∧ (∀ a t, t ∈ Ioo (0 : ℝ) 1 → Q (a, t) = (D a).quantileReal t) ∧ (∀ a, Measure.map (fun t => Q (a, t)) (volume.restrict (Ioo (0 : ℝ) 1)) = (D a).densityMeasure) ∧ ∀ a t, t ∈ Ioo (0 : ℝ) 1 → HasDerivAt (fun s => Q (a, s)) ((D a).density (Q (a, t)))⁻¹ t := by …Mentions: OAI.Problem358.PositiveIntervalDensity, OAI.Problem358.PositiveIntervalDensity.cdf, OAI.Problem358.PositiveIntervalDensity.quantileReal, OAI.Problem358.PositiveIntervalDensity.densityMeasure
- lemma
OAI.Problem358.PositiveIntervalDensity.clippedCDF_mem_unitIntervalline 652 - lemma
OAI.Problem358.PositiveIntervalDensity.cdf_densityMeasure_eq_clippedCDFline 659Source documentation
The clamped primitive is the actual probability CDF of the density law.
lemma cdf_densityMeasure_eq_clippedCDF (D : PositiveIntervalDensity) (x : ℝ) : ProbabilityTheory.cdf D.densityMeasure x = D.clippedCDF x := by …Mentions: OAI.Problem358.PositiveIntervalDensity
- lemma
OAI.Problem358.PositiveIntervalDensity.existsUnique_probability_cdf_eqline 689 - theorem
OAI.Problem358.PositiveIntervalDensity.exists_measurable_density_kernel_quantilesline 697Source documentation
A measurable kernel of positive interval-density laws has jointly measurable quantiles with exact conditional laws and inverse-density derivatives. No measurability of chosen support endpoints is separately required.
theorem exists_measurable_density_kernel_quantiles {A : Type*} [MeasurableSpace A] (D : A → PositiveIntervalDensity) (κ : ProbabilityTheory.Kernel A ℝ) [ProbabilityTheory.IsMarkovKernel κ] (hκ : ∀ a, κ a = (D a).densityMeasure) : ∃ Q : A × ℝ → ℝ, Measurable Q ∧ (∀ a, Measure.map (fun t => Q (a, t)) (volume.restrict (Ioo (0 : ℝ) 1)) = κ a) ∧ (∀ a t, t ∈ Ioo (0 : ℝ) 1 → Q (a, t) = (D a).quantileReal t) ∧ ∀ a t, t ∈ Ioo (0 : ℝ) 1 → HasDerivAt (fun s => Q (a, s)) ((D a).density (Q (a, t)))⁻¹ t := by …Mentions: OAI.Problem358.PositiveIntervalDensity, OAI.Problem358.PositiveIntervalDensity.densityMeasure, OAI.Problem358.PositiveIntervalDensity.quantileReal