Skip to content
DraconiticResearch
Search Sources API
201,818 studies31 sourcesUpdated 20 min ago
PreprintarXiv licencearXiv

Developing a Numerical Algorithm with CIVL Model Checking in the Loop

Abstract

Verifying a numerical algorithm in a large scientific simulation framework is challenging: the framework is too big to model-check, and the unit tests exercise only sampled inputs. We report a case study in which we developed a new cloud-in-cell (CIC) deposition algorithm for Flash-X, a large-scale multiphysics simulation framework, keeping the CIVL model checker in the development loop. Rather than verify the algorithm within Flash-X's hefty infrastructure, we extract only the interfaces that the algorithm needs into a small, self-contained C model, which abstracts away implementation details of the Flash-X infrastructure that are unrelated to the new algorithm. The new algorithm is then built and checked within this C model. The CIVL model checker enables verification of the required physical properties of the CIC deposition algorithm using symbolic values for the particle positions. It proves two physical properties---mass conservation and the deposition location---for the continuum of admissible positions in the simulation domain. CIVL also verifies the algorithm's memory safety and freedom from MPI deadlocks and data race conditions over all rank distributions within specified bounds. Writing the verifying properties first and continuously checking them at each stage of the bottom-up prototyping workflow turned CIVL into a design guardrail that greatly increased confidence in the extended algorithm. During our case study, CIVL surfaced a concurrency defect in the algorithm that our random-seed-based tests failed to exercise. This paper shows our workflow, with the goal of helping readers understand its benefits, cost, and tradeoffs compared with testing.

Related

  1. Numerical evaluation of one-loop integrals using quadrature rules
    Jürgen Dölz, Claude Duhr, Bartul Kovačić +1
    arXivPreprintarXiv licenceFull textNumerical analysis & scientific computingHigh-energy & particle physicsarXiv
  2. On the Numerical Integration of One-Loop Cosmological Collider Signals
    Michael Borinsky, Aidan Herderschee, Qianshu Lu
    arXivPreprintCC BY 4.0Full textCosmologyHigh-energy & particle physicsarXiv
  3. Checking the Schwinger-Dyson equation in the purely open matrix-tensor model
    Daniel L. Jafferis, Liza Rozenberg, Diandian Wang +1
    arXivPreprintCC BY 4.0Full textGravitation & general relativityHigh-energy & particle physicsarXiv
  4. Methods for Automated Equivalence Checking of Quantum Error-Correction Codes
    Maxie Bichmann, Ludwig Schmid, Robert Wille
    arXivPreprintarXiv licenceFull textQuantum physics & quantum informationarXiv
  5. Design-Time Conformance Checking for Pulse-Level Quantum Control
    Rylan Malarchick
    arXivPreprintCC BY 4.0Full textQuantum physics & quantum informationarXiv
BibTeX
@misc{lee2026developing,
  title = {{Developing a Numerical Algorithm with CIVL Model Checking in the Loop}},
  author = {Youngjun Lee and Anshu Dubey and Jan Hückelheim},
  howpublished = {arXiv},
  year = {2026},
  month = sep,
  doi = {10.48550/arxiv.2609.31964},
  eprint = {2609.31964},
  archivePrefix = {arXiv},
  url = {https://arxiv.org/abs/2609.31964},
}
RIS
TY  - UNPB
TI  - Developing a Numerical Algorithm with CIVL Model Checking in the Loop
AU  - Youngjun Lee
AU  - Anshu Dubey
AU  - Jan Hückelheim
PY  - 2026
DA  - 2026/09/25
PB  - arXiv
DO  - 10.48550/arxiv.2609.31964
UR  - https://arxiv.org/abs/2609.31964
AB  - Verifying a numerical algorithm in a large scientific simulation framework is challenging: the framework is too big to model-check, and the unit tests exercise only sampled inputs. We report a case study in which we developed a new cloud-in-cell (CIC) deposition algorithm for Flash-X, a large-scale multiphysics simulation framework, keeping the CIVL model checker in the development loop. Rather than verify the algorithm within Flash-X's hefty infrastructure, we extract only the interfaces that the algorithm needs into a small, self-contained C model, which abstracts away implementation details of the Flash-X infrastructure that are unrelated to the new algorithm. The new algorithm is then built and checked within this C model. The CIVL model checker enables verification of the required physical properties of the CIC deposition algorithm using symbolic values for the particle positions. It proves two physical properties---mass conservation and the deposition location---for the continuum of admissible positions in the simulation domain. CIVL also verifies the algorithm's memory safety and freedom from MPI deadlocks and data race conditions over all rank distributions within specified bounds. Writing the verifying properties first and continuously checking them at each stage of the bottom-up prototyping workflow turned CIVL into a design guardrail that greatly increased confidence in the extended algorithm. During our case study, CIVL surfaced a concurrency defect in the algorithm that our random-seed-based tests failed to exercise. This paper shows our workflow, with the goal of helping readers understand its benefits, cost, and tradeoffs compared with testing.
ER  -