661 research outputs found
Unsatisfiability proofs for distributed clause-sharing SAT solvers
Distributed clause-sharing SAT solvers can solve problems up to one hundred times faster than sequential SAT solvers by sharing derived information among multiple sequential solvers working on the same problem. Unlike sequential solvers, however, distributed solvers have not been able to produce proofs of unsatisfiability in a scalable manner, which has limited their use in critical applications. In this paper, we present a method to produce unsatisfiability proofs for distributed SAT solvers by combining the partial proofs produced by each sequential solver into a single, linear proof. Our approach is more scalable and general than previous explorations for parallel clause-sharing solvers, allowing use on distributed solvers without shared memory. We propose a simple sequential algorithm as well as a fully distributed algorithm for proof composition. Our empirical evaluation shows that for large-scale distributed solvers (100 nodes of 16 cores each), our distributed approach allows reliable proof composition and checking with reasonable overhead. We analyze the overhead and discuss how and where future efforts may further improve performance
QRAT+: Generalizing QRAT by a More Powerful QBF Redundancy Property
The QRAT (quantified resolution asymmetric tautology) proof system simulates
virtually all inference rules applied in state of the art quantified Boolean
formula (QBF) reasoning tools. It consists of rules to rewrite a QBF by adding
and deleting clauses and universal literals that have a certain redundancy
property. To check for this redundancy property in QRAT, propositional unit
propagation (UP) is applied to the quantifier free, i.e., propositional part of
the QBF. We generalize the redundancy property in the QRAT system by QBF
specific UP (QUP). QUP extends UP by the universal reduction operation to
eliminate universal literals from clauses. We apply QUP to an abstraction of
the QBF where certain universal quantifiers are converted into existential
ones. This way, we obtain a generalization of QRAT we call QRAT+. The
redundancy property in QRAT+ based on QUP is more powerful than the one in QRAT
based on UP. We report on proof theoretical improvements and experimental
results to illustrate the benefits of QRAT+ for QBF preprocessing.Comment: preprint of a paper to be published at IJCAR 2018, LNCS, Springer,
including appendi
cake_lpr: Verified Propagation Redundancy Checking in CakeML
Modern SAT solvers can emit independently checkable proof certificates to validate their results. The state-of-the-art proof system that allows for compact proof certificates is propagation redundancy (PR). However, the only existing method to validate proofs in this system with a formally verified tool requires a transformation to a weaker proof system, which can result in a significant blowup in the size of the proof and increased proof validation time. This paper describes the first approach to formally verify PR proofs on a succinct representation; we present (i) a new Linear PR (LPR) proof format, (ii) a tool to efficiently convert PR proofs into LPR format, and (iii) cake_lpr, a verified LPR proof checker developed in CakeML. The LPR format is backwards compatible with the existing LRAT format, but extends the latter with support for the addition of PR clauses. Moreover, cake_lpr is verified using CakeML’s binary code extraction toolchain, which yields correctness guarantees for its machine code (binary) implementation. This further distinguishes our clausal proof checker from existing ones because unverified extraction and compilation tools are removed from its trusted computing base. We experimentally show that LPR provides efficiency gains over existing proof formats and that the strong correctness guarantees are obtained without significant sacrifice in the performance of the verified executable
Nonexistence Certificates for Ovals in a Projective Plane of Order Ten
In 1983, a computer search was performed for ovals in a projective plane of
order ten. The search was exhaustive and negative, implying that such ovals do
not exist. However, no nonexistence certificates were produced by this search,
and to the best of our knowledge the search has never been independently
verified. In this paper, we rerun the search for ovals in a projective plane of
order ten and produce a collection of nonexistence certificates that, when
taken together, imply that such ovals do not exist. Our search program uses the
cube-and-conquer paradigm from the field of satisfiability (SAT) checking,
coupled with a programmatic SAT solver and the nauty symbolic computation
library for removing symmetries from the search.Comment: Appears in the Proceedings of the 31st International Workshop on
Combinatorial Algorithms (IWOCA 2020
Solving and Verifying the Boolean Pythagorean Triples Problem via Cube-and-Conquer
We solved a long-outstanding open problem in Ramsey theory, using SAT solving
Even shorter proofs without new variables
Proof formats for SAT solvers have diversified over the last decade, enabling
new features such as extended resolution-like capabilities, very general
extension-free rules, inclusion of proof hints, and pseudo-boolean reasoning.
Interference-based methods have been proven effective, and some theoretical
work has been undertaken to better explain their limits and semantics. In this
work, we combine the subsumption redundancy notion from (Buss, Thapen 2019) and
the overwrite logic framework from (Rebola-Pardo, Suda 2018). Natural
generalizations then become apparent, enabling even shorter proofs of the
pigeonhole principle (compared to those from (Heule, Kiesl, Biere 2017)) and
smaller unsatisfiable core generation.Comment: 21 page
A SAT-based Resolution of Lam's Problem
In 1989, computer searches by Lam, Thiel, and Swiercz experimentally resolved
Lam's problem from projective geometry\unicode{x2014}the long-standing
problem of determining if a projective plane of order ten exists. Both the
original search and an independent verification in 2011 discovered no such
projective plane. However, these searches were each performed using highly
specialized custom-written code and did not produce nonexistence certificates.
In this paper, we resolve Lam's problem by translating the problem into Boolean
logic and use satisfiability (SAT) solvers to produce nonexistence certificates
that can be verified by a third party. Our work uncovered consistency issues in
both previous searches\unicode{x2014}highlighting the difficulty of relying
on special-purpose search code for nonexistence results.Comment: To appear at the Thirty-Fifth AAAI Conference on Artificial
Intelligenc
Certifying Correctness for Combinatorial Algorithms : by Using Pseudo-Boolean Reasoning
Over the last decades, dramatic improvements in combinatorialoptimisation algorithms have significantly impacted artificialintelligence, operations research, and other areas. These advances,however, are achieved through highly sophisticated algorithms that aredifficult to verify and prone to implementation errors that can causeincorrect results. A promising approach to detect wrong results is touse certifying algorithms that produce not only the desired output butalso a certificate or proof of correctness of the output. An externaltool can then verify the proof to determine that the given answer isvalid. In the Boolean satisfiability (SAT) community, this concept iswell established in the form of proof logging, which has become thestandard solution for generating trustworthy outputs. The problem isthat there are still some SAT solving techniques for which prooflogging is challenging and not yet used in practice. Additionally,there are many formalisms more expressive than SAT, such as constraintprogramming, various graph problems and maximum satisfiability(MaxSAT), for which efficient proof logging is out of reach forstate-of-the-art techniques.This work develops a new proof system building on the cutting planesproof system and operating on pseudo-Boolean constraints (0-1 linearinequalities). We explain how such machine-verifiable proofs can becreated for various problems, including parity reasoning, symmetry anddominance breaking, constraint programming, subgraph isomorphism andmaximum common subgraph problems, and pseudo-Boolean problems. Weimplement and evaluate the resulting algorithms and a verifier for theproof format, demonstrating that the approach is practical for a widerange of problems. We are optimistic that the proposed proof system issuitable for designing certifying variants of algorithms inpseudo-Boolean optimisation, MaxSAT and beyond
- …