Synthesizing Backward Error Bounds, Backward

📅 2026-04-16
📈 Citations: 0
✨ Influential: 0
📄 PDF
🤖 AI Summary
Existing approaches lack the capability to perform automated backward error analysis for numerical programs, making it difficult to verify their backward stability. This work proposes a formal framework that generalizes the definition of backward stability, introduces the category Shel to model stable numerical computations, and develops the tool eggshel to automatically synthesize error bounds. The framework incorporates a novel, composable, and flexible notion of stability, integrating category theory, formal verification, and symbolic reasoning to automatically search for stability proofs within subcategories of Shel. Notably, eggshel is the first tool capable of automating the analysis of programs with variable reuse, successfully generating backward error bounds for several numerical programs previously beyond the reach of existing methods, while providing formal correctness guarantees.

Technology Category

Knowledge Representation and Reasoning: Automated Reasoning and Theorem ProvingReasoning under Uncertainty: Stochastic OptimizationConstraint Satisfaction and Optimization: Satisfiability Modulo Theories

Application Category

Graph Algorithms and Modeling for the Web: Algorithms and analysis for incomplete, noisy, or partially observed Web-related graphsEconomics, Online Markets and Human Computation: Incentives in network design for Web infrastructures and ecosystemsSemantics and Knowledge: Data modeling to support human-machine intelligence, including LLMs agents, intelligent system behavior, explanations, and user-friendly interactions
📝 Abstract
Backward stability is a desirable property for a well-designed numerical algorithm: given an input, a backward stable floating-point program produces the exact output for a nearby input. While automated tools for bounding the forward error of a numerical program are well-established, few existing tools target backward error analysis. We present a formal framework that enables sound, automated backward error analysis for a broad class of numerical programs. First, we propose a novel generalization of the definition of backward stability that is both compositional and flexible, satisfied by a wide range of floating-point operations. Second, based on this generalization, we develop the category Shel where morphisms model stable numerical programs, and show that structures in Shel support a rich variety of backward error analyses. Third, we implement a tool, eggshel, that automatically searches within a syntactic subcategory of Shel to prove backward stability for a given program. Our algorithm handles many programs with variable reuse, a known challenge in backward error analysis. We prove soundness of our algorithm and use our tool to synthesize backward error bounds for a suite of programs that were previously beyond the reach of automated analysis.
Problem

Research questions and friction points this paper is trying to address.

backward error analysis
numerical programs
backward stability
automated analysis
floating-point computation
Innovation

Methods, ideas, or system contributions that make the work stand out.

backward error analysis
backward stability
automated verification
numerical programs
category theory