Papers
Topics
Authors
Recent
Search
2000 character limit reached

Shock with Confidence: Formal Proofs of Correctness for Hyperbolic Partial Differential Equation Solvers

Published 18 Mar 2025 in cs.LO, cs.NA, math.NA, and physics.comp-ph | (2503.13877v1)

Abstract: First-order systems of hyperbolic partial differential equations (PDEs) occur ubiquitously throughout computational physics, commonly used in simulations of fluid turbulence, shock waves, electromagnetic interactions, and even general relativistic phenomena. Such equations are often challenging to solve numerically in the non-linear case, due to their tendency to form discontinuities even for smooth initial data, which can cause numerical algorithms to become unstable, violate conservation laws, or converge to physically incorrect solutions. In this paper, we introduce a new formal verification pipeline for such algorithms in Racket, which allows a user to construct a bespoke hyperbolic PDE solver for a specified equation system, generate low-level C code which verifiably implements that solver, and then produce formal proofs of various mathematical and physical correctness properties of the resulting implementation, including L2 stability, flux conservation, and physical validity. We outline how these correctness proofs are generated, using a custom-built theorem-proving and automatic differentiation framework that fully respects the algebraic structure of floating-point arithmetic, and show how the resulting C code may either be used to run standalone simulations, or integrated into a larger computational multiphysics framework such as Gkeyll.

Summary

  • The paper introduces a formal verification pipeline for hyperbolic PDE solvers, enabling the generation of verifiable C code and formal proofs for properties like stability and flux conservation.
  • Numerical results confirm the solver's properties across various scalar and vector equation systems, including linear advection, Burgers', Maxwell's, and Euler equations.
  • Formal verification enhances the reliability of numerical simulations and holds potential for application to other types of numerical solvers beyond PDEs.

"Shock with Confidence: Formal Proofs of Correctness for Hyperbolic Partial Differential Equation Solvers" (2503.13877) introduces a formal verification pipeline in Racket for constructing and verifying hyperbolic PDE solvers, addressing challenges in simulating phenomena like fluid turbulence and shock waves. The pipeline generates verifiable C code and formal proofs for properties like L2L^2 stability and flux conservation.

Key Methodological Elements

The paper details a DSL in Racket for describing first-order hyperbolic PDE systems, facilitating the creation of verifiable finite volume algorithms that respect floating-point arithmetic's algebraic properties. The verification framework uses a symbolic theorem-prover and automatic differentiation tool that accommodate the algebraic structure of numerical computations. The methodology focuses on ensuring high-resolution shock-capturing schemes are hyperbolicity-preserving, CFL stable, and Lipschitz continuous. Extrapolation algorithms for second-order accuracy are validated for symmetry and total variation diminishing properties.

Numerical and Theoretical Results

The solver's properties are numerically confirmed across scalar and vector equation systems, including linear advection, inviscid Burgers', perfectly hyperbolic Maxwell's, and isothermal Euler equations. Correctness properties of multiple PDE solvers were confirmed, and limitations were assessed in scenarios where conclusive proofs were not obtainable. Some proofs required specific conditions, like positivity of fluid density for isothermal Euler equations.

Implications for Computational Physics

Formal verification in numerical simulation enhances the reliability and performance certainty of numerical solvers in multiphysics simulations, reducing risks of numerical errors leading to incorrect physical predictions.

Future Directions

The research suggests extending formal verification to other numerical solvers like Runge-Kutta, Crank-Nicolson ODE integrators, and modal discontinuous Galerkin methods, which could address current limitations in simulating complex coupled systems like kinetic equations or coupled electromagnetic-plasma interactions.

In summary, the paper presents a formal verification pipeline for hyperbolic PDE solvers, emphasizing verifiable C code generation and formal proofs of correctness properties. Numerical results confirm solver properties across various equation systems, with implications for enhancing reliability in computational physics and future extensions to other numerical methods.

Paper to Video (Beta)

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Authors (2)

Collections

Sign up for free to add this paper to one or more collections.

Tweets

Sign up for free to view the 12 tweets with 526 likes about this paper.