Documentation

BSeries.Numerics.ExplicitDensity

Density of explicit Runge–Kutta methods #

Butcher's Theorem 317A holds with the methods restricted to explicit tableaux (Butcher, Numerical Methods for ODEs, Remark after Theorem 317A; arXiv:2507.21006, Remark rmk:explicit_rk_density): all four constructions of the density proof — the zero scheme, block-diagonal sums, weight scalings, tableau scalings, and the one-stage extension — preserve strict lower-triangularity with respect to the lexicographic stage orders.

theorem BSeries.RungeKutta.isExplicit_dirSum {ι : Type u} {κ : Type v} {R : Type w} [LinearOrder ι] [LinearOrder κ] [Zero R] {rk₁ : RungeKutta ι R} {rk₂ : RungeKutta κ R} (h₁ : rk₁.IsExplicit) (h₂ : rk₂.IsExplicit) :
(rk₁.dirSum rk₂).IsExplicit
theorem BSeries.RungeKutta.isExplicit_scaleWeights {ι : Type u} {R : Type w} [LinearOrder ι] [Mul R] [Zero R] (c : R) {rk : RungeKutta ι R} (h : rk.IsExplicit) :
theorem BSeries.RungeKutta.isExplicit_smulScheme {ι : Type u} {R : Type w} [LinearOrder ι] [MulZeroClass R] (c : R) {rk : RungeKutta ι R} (h : rk.IsExplicit) :

A vector of prescribed elementary weights is explicitly achievable if some explicit Runge–Kutta method realizes it.

Equations
Instances For
    theorem BSeries.RungeKutta.AchievableWeightsE.add {R : Type w} [CommSemiring R] {T₀ : Finset HopfAlgebras.RootedTree} {w₁ w₂ : T₀R} (h₁ : AchievableWeightsE T₀ w₁) (h₂ : AchievableWeightsE T₀ w₂) :
    AchievableWeightsE T₀ (w₁ + w₂)
    theorem BSeries.RungeKutta.AchievableWeightsE.smul {R : Type w} [CommSemiring R] {T₀ : Finset HopfAlgebras.RootedTree} {w : T₀R} (c : R) (h : AchievableWeightsE T₀ w) :
    theorem BSeries.RungeKutta.AchievableWeightsE.graded {R : Type w} [CommSemiring R] {T₀ : Finset HopfAlgebras.RootedTree} {w : T₀R} (c : R) (h : AchievableWeightsE T₀ w) :
    AchievableWeightsE T₀ fun (t : T₀) => c ^ (↑t).order * w t

    The explicitly achievable weight vectors form a submodule.

    Equations
    Instances For
      theorem BSeries.RungeKutta.annihilator_gradedE {R : Type w} [Field R] [Infinite R] {T₀ : Finset HopfAlgebras.RootedTree} (ξ : T₀R) (h : ∀ (w : T₀R), AchievableWeightsE T₀ wt : T₀, ξ t * w t = 0) (d : ) {w : T₀R} (hw : AchievableWeightsE T₀ w) :
      t : T₀ with (↑t).order = d, ξ t * w t = 0

      Graded annihilation, explicit version.

      Density of explicit Runge–Kutta methods (Butcher, Theorem 317A with the explicitness remark; arXiv:2507.21006, rmk:explicit_rk_density): any finite prescription of elementary weights is realized by an explicit Runge–Kutta method.

      theorem BSeries.RungeKutta.exists_explicit_rk_forall_treeWeight {R : Type w} [Field R] [Infinite R] (T₀ : Finset HopfAlgebras.RootedTree) (β : HopfAlgebras.RootedTreeR) :
      ∃ (ι : Type) (x : LinearOrder ι) (x_1 : Fintype ι) (rk : RungeKutta ι R), rk.IsExplicit tT₀, rk.treeWeight t = β t

      Explicit density, packaged for arbitrary finite tree sets.