Uniform time grid and grid simple integrands
DefinitionKLSModular_LevyStochCalc_Brownian_ItoFormulaGridVendored from the LevyStochCalc library at https://github.com/cgarryZA/LevyStochCalc, commit 984dbf0b790031eac05d56fe5a84b65e15e1e932. unifGrid T m i is the grid point ; when , the grid starts at , ends at , has mesh , and is strictly increasing when . SimplePredictable.ofUnifGrid packages bounded measurable coefficients on the cells into a simple predictable integrand on , with accompanying declarations exposing its partition, coefficients, and adaptedness condition.
Original module imports
import LevyStochCalc.Brownian.ItoProcess
import LevyStochCalc.Brownian.RiemannSum
import LevyStochCalc.Brownian.ItoIncrementMoment
Original declaration excerpt
Shown in the original module context.
noncomputable def unifGrid (T : ℝ) (m : ℕ) (i : ℕ) : ℝ := (i : ℝ) * T / (m : ℝ)
Module navigation
Direct project imports: LevyStochCalc/Brownian/ItoProcess, LevyStochCalc/Brownian/RiemannSum, LevyStochCalc/Brownian/ItoIncrementMoment.
Theorems in source order:
Project result: The KLS conjecture.
Original module · LevyStochCalc.Brownian.ItoFormulaGrid · Frozen source 408915f.
import Definitions.Def_KLSModular_LevyStochCalc_Brownian_ItoProcess
import Definitions.Def_KLSModular_LevyStochCalc_Brownian_RiemannSum
import Definitions.Def_KLSModular_LevyStochCalc_Brownian_ItoIncrementMoment
/-
Copyright (c) 2026 Christian Garry. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Christian Garry
-/
-- Vendored from https://github.com/cgarryZA/LevyStochCalc at commit 984dbf0b790031eac05d56fe5a84b65e15e1e932 (upstream path LevyStochCalc/Brownian/ItoFormulaGrid.lean; Apache-2.0; provenance in formalization/vendor/vendor-lock.json of the KLS repository)
namespace LevyStochCalc
namespace Brownian
namespace Ito
open MeasureTheory ProbabilityTheory
open scoped NNReal ENNReal
universe u
variable {Ω : Type u} [MeasurableSpace Ω]
/-- The uniform grid on `[0, T]` with `m` cells. -/
noncomputable def unifGrid (T : ℝ) (m : ℕ) (i : ℕ) : ℝ := (i : ℝ) * T / (m : ℝ)
@[simp] theorem unifGrid_zero (T : ℝ) (m : ℕ) : unifGrid T m 0 = 0 := by simp [unifGrid]
theorem unifGrid_self {T : ℝ} {m : ℕ} (hm : m ≠ 0) : unifGrid T m m = T := by
rw [unifGrid]
field_simp
theorem unifGrid_succ_sub {T : ℝ} {m : ℕ} (hm : m ≠ 0) (i : ℕ) :
unifGrid T m (i + 1) - unifGrid T m i = T / (m : ℝ) := by
have hm' : (m : ℝ) ≠ 0 := Nat.cast_ne_zero.mpr hm
rw [unifGrid, unifGrid]
push_cast
field_simp
ring
theorem unifGrid_lt_succ {T : ℝ} (hT : 0 < T) {m : ℕ} (hm : m ≠ 0) (i : ℕ) :
unifGrid T m i < unifGrid T m (i + 1) := by
have hm' : (0 : ℝ) < (m : ℝ) := Nat.cast_pos.mpr (Nat.pos_of_ne_zero hm)
have h := unifGrid_succ_sub (T := T) hm i
have : 0 < T / (m : ℝ) := div_pos hT hm'
linarith
/-- The simple integrand on the uniform grid of `[0, T]` with the given cell coefficients. -/
noncomputable def SimplePredictable.ofUnifGrid {T : ℝ} (hT : 0 < T) {m : ℕ} (hm : m ≠ 0)
(ξ : Fin m → Ω → ℝ) (hbdd : ∀ i : Fin m, ∃ M : ℝ, ∀ ω : Ω, |ξ i ω| ≤ M)
(hmeas : ∀ i : Fin m, Measurable (ξ i)) : SimplePredictable Ω T where
N := m
partition := fun i => unifGrid T m (i : ℕ)
partition_zero := by simp
partition_le_T := le_of_eq (by simpa using unifGrid_self (T := T) hm)
partition_strictMono := by
refine Fin.strictMono_iff_lt_succ.mpr fun i => ?_
simpa using unifGrid_lt_succ hT hm (i : ℕ)
ξ := ξ
ξ_bounded := hbdd
ξ_measurable := hmeas
@[simp] theorem SimplePredictable.ofUnifGrid_partition {T : ℝ} (hT : 0 < T) {m : ℕ} (hm : m ≠ 0)
(ξ : Fin m → Ω → ℝ) (hbdd : ∀ i : Fin m, ∃ M : ℝ, ∀ ω : Ω, |ξ i ω| ≤ M)
(hmeas : ∀ i : Fin m, Measurable (ξ i)) (i : Fin (m + 1)) :
(SimplePredictable.ofUnifGrid hT hm ξ hbdd hmeas).partition i = unifGrid T m (i : ℕ) := rfl
@[simp] theorem SimplePredictable.ofUnifGrid_xi {T : ℝ} (hT : 0 < T) {m : ℕ} (hm : m ≠ 0)
(ξ : Fin m → Ω → ℝ) (hbdd : ∀ i : Fin m, ∃ M : ℝ, ∀ ω : Ω, |ξ i ω| ≤ M)
(hmeas : ∀ i : Fin m, Measurable (ξ i)) (i : Fin m) :
(SimplePredictable.ofUnifGrid hT hm ξ hbdd hmeas).ξ i = ξ i := rfl
theorem SimplePredictable.ofUnifGrid_adapt (ℱ : Filtration ℝ ‹MeasurableSpace Ω›)
{T : ℝ} (hT : 0 < T) {m : ℕ} (hm : m ≠ 0)
(ξ : Fin m → Ω → ℝ) (hbdd : ∀ i : Fin m, ∃ M : ℝ, ∀ ω : Ω, |ξ i ω| ≤ M)
(hmeas : ∀ i : Fin m, Measurable (ξ i))
(hadapt : ∀ i : Fin m, @MeasureTheory.StronglyMeasurable Ω ℝ _
(ℱ (unifGrid T m (i : ℕ))) (ξ i)) :
∀ i : Fin (SimplePredictable.ofUnifGrid hT hm ξ hbdd hmeas).N,
@MeasureTheory.StronglyMeasurable Ω ℝ _
(ℱ ((SimplePredictable.ofUnifGrid hT hm ξ hbdd hmeas).partition i.castSucc))
((SimplePredictable.ofUnifGrid hT hm ξ hbdd hmeas).ξ i) := hadapt
end Ito
end Brownian
end LevyStochCalc