Verified SAT Redundancy Checking in SPARK

Boolean satisfiability (SAT) asks to decide whether a formula can be evaluated to true. In certified SAT solving, one additionally asks to provide a certificate or verifiable proof to ensure correctness of the solver's output. A crucial component in this process are fast verified, proof checkers. However, constructing efficient, formally verified checkers remains challenging. In this paper, we study whether the Ada/SPARK programming language can enable reliable, efficient, verifiable proof checkers. SPARK 2014, with its design-by-contract capabilities, allows to express core concepts of propositional logic and modern redundancy criteria with functional correctness. We introduce a methodology for implementing SAT specifications in SPARK, accompanied by formal proofs with a focus on Resolution Asymmetric Tautologies (RAT). While a complete verified proof checker is not yet realized, our work establishes the foundational framework necessary for its future development, and demonstrates that strong correctness guarantees can be realized in SPARK.

Authors

Institutions

Publication Details

Journal
ACM SIGAda Ada Letters
Published
2025-06-01
DOI
https://doi.org/10.1145/3784987.3784998
Primary Topic
Formal Methods in Verification
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Verified SAT Redundancy Checking in SPARK

Tobias Philipp
ACM SIGAda Ada Letters
Formal Methods in Verification
article

Verified SAT Redundancy Checking in SPARK

Tobias Philipp
article en

Abstract

Boolean satisfiability (SAT) asks to decide whether a formula can be evaluated to true. In certified SAT solving, one additionally asks to provide a certificate or verifiable proof to ensure correctness of the solver's output. A crucial component in this process are fast verified, proof checkers. However, constructing efficient, formally verified checkers remains challenging. In this paper, we study whether the Ada/SPARK programming language can enable reliable, efficient, verifiable proof checkers. SPARK 2014, with its design-by-contract capabilities, allows to express core concepts of propositional logic and modern redundancy criteria with functional correctness. We introduce a methodology for implementing SAT specifications in SPARK, accompanied by formal proofs with a focus on Resolution Asymmetric Tautologies (RAT). While a complete verified proof checker is not yet realized, our work establishes the foundational framework necessary for its future development, and demonstrates that strong correctness guarantees can be realized in SPARK.

ACM SIGAda Ada LettersVol. 45(1)
Linköping University (SE), Airbus (Italy) (IT)
Openalex Percentile: Top 25%
Formal Methods in Verification
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.