Expand description
V2-13 — Differential algebra / Rosenfeld–Gröbner-style differential elimination.
Given a polynomial DAE in implicit form g_i(t, y, y') = 0, prolongation
appends formal time derivatives D^k(g_i) while tracking the derivative
state layout (same structural rule as crate::dae::pantelides). After
each prolongation step, an ordinary Gröbner basis over ℚ captures the
algebraic constraints among the jet variables. Inconsistent systems
yield the unit ideal (basis containing a non-zero constant).
This is a fragment of the full Rosenfeld–Gröbner / regular differential decomposition (no multi-branch saturation over initials here); it suffices for consistency checking and complements Pantelides when the structural index is high.
References:
- Boulier et al., Rosenfeld–Gröbner algorithm (differential elimination).
- Hubert, Differential algebra for comptroller generation.
Structs§
- Differential
Ideal - Algebraic presentation of a finitely generated differential ideal (dense ℚ-polynomial generators in a fixed jet basis).
- Differential
Ranking - Ordering data for differential indeterminates:
vars[i]maps to exponent indexiofGbPolyused in Gröbner steps. - Differential
Ring - Ordinary polynomial ring context for a fixed independent variable and ranked jets.
- Regular
Differential Chain - One component produced by differential elimination — here the algebraic Gröbner basis of a saturated ordinary ideal at the end of prolongation.
- Rosenfeld
Groebner Result - Result of
rosenfeld_groebner(single coherent component in this build).
Enums§
- DaeIndex
Reduction - Outcome of
dae_index_reduce: Pantelides when it succeeds, otherwise a Rosenfeld–Gröbner consistency pass when Pantelides hits its index cap. - Diff
AlgError - Errors from differential-algebra operations.
Functions§
- dae_
index_ reduce - Try Pantelides; on
DaeError::IndexTooHigh, runrosenfeld_groebner. - rosenfeld_
groebner rosenfeld_groebner_with_optionswith [DEFAULT_MAX_PROLONG_ROUNDS].- rosenfeld_
groebner_ algebraic - Algebraic-only slice: Gröbner basis of the generators; empty
Vecif the ideal is[1]. - rosenfeld_
groebner_ with_ options - Rosenfeld-style prolongation + Gröbner stabilization for a polynomial DAE.