skip to main content
research-article
Free access

Generating and Exploiting Automated Reasoning Proof Certificates

Published: 22 September 2023 Publication History

Abstract

Moving toward a full suite of proof-producing automated reasoning tools with SMT solvers that can produce full, independently checkable proofs for real-world problems.

References

[1]
Amrutesh K. and Cook, B. How I learned to stop worrying and start applying automated reasoning. In Proceedings of the 33rd Intern. Conf. on Computer-Aided Verification (2021); https://bit.ly/3QO7vLt.
[2]
Andreotti, B., Lachnitt, H., and Barbosa, B. Carcara: An efficient proof checker and elaborator for SMT proofs in the Alethe format. In Proceedings of the 29th Intern. Conf. of Tools and Algorithms for the Construction and Analysis of Systems (April 2023).
[3]
Backes, J. et al. Semantic-based automated reasoning for AWS access policies using SMT. 2018 Formal Methods in Computer Aided Design, 1--9.
[4]
Baek, S., Carneiro, M., and Heule, M.J.H. A flexible proof format for SAT solver-elaborator communication. In Proceedings of the 27th Intern. Conf. on Tools and Algorithms for the Construction and Analysis of Systems, J.F. Groote and K.G. Larsen (Eds.), Springer (2021), 59--75.
[5]
Baldoni, R. et al. A survey of symbolic execution techniques. ACM Computing Surveys 51, 3 (2018), 50:1--50:39.
[6]
Barbosa, H. et al. <code>cvc5</code>: A versatile and industrial-strength SMT solver. In Proceedings of the 28th Intern. Conf. on Tools and Algorithms for the Construction and Analysis of Systems, D. Fisman and G. Rosu (Eds.), Springer (2022), 415--442.
[7]
Barbosa, H. et al. Scalable fine-grained proofs for formula processing. J. Autom. Reasoning 64, 3 (2020), 485--510.
[8]
Barbosa, H. et al. Flexible proof production in an industrial-strength SMT solver. J. Blanchette, L. Kovács, and D. Pattinson (Eds.) In Proceedings of the 11th Intern. Joint Conf. on Automated Reasoning. Springer (2022), 15--35.
[9]
Barrett, C.W. et al. <code>CVC4</code>. In Proceedings of the 23rd Intern. Conf. on Computer Aided Verification, G. Gopalakrishnan and S. Qadeer (Eds.), Springer (July 2011), 171--177.
[10]
Barrett, C.W. Satisfiability modulo theories. Handbook of Satisfiability---2nd Edition. A. Biere, M. Heule, H. van Maaren, and T. Walsh, (Eds.), IOS Press (2021), 1267--1329.
[11]
Barrett, C.W. and Tinelli, C. Satisfiability modulo theories. Handbook of Model Checking, E.M. Clarke, T.A. Henzinger, H. Veith, and R. Bloem (Eds.), Springer (2018), 305--343.
[12]
Blanchette, J.C., Böhme, S., and Paulson, L.C. Extending sledgehammer with SMT solvers. J. Autom. Reasoning 51, 1 (2013), 109--128.
[13]
Bouton, T. et al. verit: An open, trustable and efficient smt-solver. In Proceedings of the 22nd Intern. Conf. on Automated Deduction, R.A. Schmidt, (Ed.), Springer (Aug. 2009), 151--156.
[14]
Bozzano, M. et al. An incremental and layered procedure for the satisfiability of linear arithmetic logic. In Proceedings of the 11th Intern. Conf. on Tools and Algorithms for the Construction and Analysis of Systems, N. Halbwachs and L.D. Zuck, (Eds.), Springer (Apr. 2005), 317--333.
[15]
Bradley, A.R. and Manna, Z. The Calculus of Computation---Decision Procedures With Applications to Verification, Springer (2007).
[16]
Christ, J., Hoenicke, J., and Nutz, D. Smtinterpol: An interpolating SMT solver. In Proceedings of the 19th Intern. Workshop on Model Checking Software, A.F. Donaldson and D. Parker (Eds.), Springer (July 2012), 248--254.
[17]
Cruz-Filipe, L. et al. Efficient certified RAT verification. In Proceedings of the 28th Intern. Conf. on Automated Deduction, L. de Moura (Ed.), Springer (Aug. 2017), 220--236.
[18]
de Moura, L. and Ullrich, S. The lean 4 theorem prover and programming language. In Proceedings of the 28th Intern. Conf. on Automated Deduction, A. Platzer and G. Sutcliffe (Eds.), Springer (July 2021), 625--635.
[19]
de Moura, L.M. and Bjørner, N.S. Proofs and refutations, and Z3. In Proceedings of the LPAR 2008 Workshops, Knowledge Exchange: Automated Provers and Proof Assistants and the 7th Intern. Workshop on the Implementation of Logics, P. Rudnicki, G. Sutcliffe, B. Konev, R.A. Schmidt, and S. Schulz (Eds.), (Nov. 2008).
[20]
Eén, N. and Sörensson, N. An extensible sat-solver. In Proceedings of the 6th Intern. Conf. on Theory and Applications of Satisfiability Testing, E. Giunchiglia and A. Tacchella (Eds.), Springer (May 2003), 502--518.
[21]
Ekici, B., et al. Smtcoq: A plug-in for integrating SMT solvers into coq. In Proceedings of the 29th Intern. Conf. on Computer Aided Verification, Part II, R. Majumdar and V. Kuncak (Eds.), Springer (July 2017), 126--133.
[22]
Heule, M. et al. Efficient, verified checking of propositional proofs. In Proceedings 8th Intern. Conf. on Interactive Theorem Proving, M. Ayala-Rincón and C.A. Muñoz (Eds.), Springer (Sept. 2017), 269--284.
[23]
Heule, M.J.H. The DRAT format and drat-trim checker. CoRR, abs/1610.06229, 2016.
[24]
Katz, G. et al. Lazy proofs for DPLL(T)-based SMT solvers. In Proceedings of the 2016 Formal Methods in Computer-Aided Design, R. Piskac and M. Talupur (Eds.), IEEE, 93--100.
[25]
Kiesl, B., Rebola-Pardo, A., and Heule, M.J.H. Extended resolution simulates DRAT. In Proceedings of the 9th Intern. Joint Conf. on Automated Reasoning, D. Galmiche, S. Schulz, and R. Sebastiani, (Eds.), Springer (July 2018), 516--531.
[26]
Konnov, I. et al. (Eds.): Handbook of model checking. In Proceedings of Formal Aspects of Computing 31, 4, Springer (2019), 455--456.
[27]
Lammich, P. Efficient verified (UN)SAT certificate checking. In Proceedings of the 26th Intern. Conf. on Automated Deduction, L. de Moura (Ed.), Springer (Aug. 2017), 237--254.
[28]
Liang, T. et al. A DPLL(T) theory solver for a theory of strings and regular expressions. In Proceedings of the 26th Computer Aided Verification Intern. Conf., A. Biere and R. Bloem, (Eds.), Springer (July 2014), 646--662.
[29]
Nieuwenhuis, R. and Oliveras, A. Proof-producing congruence closure. In Proceedings of the 16th Intern. Conf. Term Rewriting and Applications, J. Giesl (Ed.), Springer (Apr. 2005), 453--468.
[30]
Nieuwenhuis, R., Oliveras, A., and Tinelli, C. Solving SAT and SAT modulo theories: From an abstract davis--putnam--logemann--loveland procedure to DPLL(T). J. ACM 53, 6 (2006), 937--977.
[31]
Nipkow, T., Paulson, L.C., and Wenzel, M. Isabelle/HOL - A Proof Assistant for Higher-Order Logic, Springer (2002).
[32]
Nötzli, A. et al. Reconstructing fine-grained proofs of rewrites using a domain-specific language. In Proceedings of the 2022 Formal Methods in Computer Aided Design, IEEE, 65--74.
[33]
Reynolds, A. et al. Reductions for strings and regular expressions revisited. In Proceedings of the 2020 Formal Methods in Computer Aided Design, IEEE, 225--235.
[34]
Reynolds, A. et al. Scaling up DPLL(T) string solvers using context-dependent simplification. In Proceedings of the 29th Computer Aided Verification Intern. Conf., R. Majumdar and V. Kuncak, (Eds.), Springer (July 2017), 453--474.
[35]
Robinson, J.A. and Voronkov, A. Preface. Handbook of Automated Reasoning (in 2 Volumes), Elsevier and MIT Press (2001), v--vii.
[36]
Schurr H-J. et al. Alethe: Towards a generic SMT proof format (extended abstract), (2021), 336:49--54.
[37]
Shankar, N. Automated deduction for verification. ACM Comput. Surveys 41, 4 (2009), 20:1--20:56.
[38]
Srivastava, S., Gulwani, S., and Foster, J.S. From program verification to program synthesis. In Proceedings of the 37th ACM SIGPLAN-SIGACT Symp. on Principles of Programming Languages, M.V. Hermenegildo and J. Palsberg, (Eds.), (Jan. 2010), 313--326.
[39]
Stump, A. et al. SMT proof checking using a logical framework. Formal Methods Syst. Des. 42, 1 (2013), 91--118.
[40]
The Coq development team. The coq proof assistant reference manual version 8.9, (2019).
[41]
Wagner, L.G et al. Qualification of a model checker for avionics software verification. In Proceedings of the 9th Intern. Symp. of NASA Formal Methods, C.W. Barrett, M. Davies, and T. Kahsai (Eds.), (May 2017), 404--419.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Communications of the ACM
Communications of the ACM  Volume 66, Issue 10
October 2023
110 pages
ISSN:0001-0782
EISSN:1557-7317
DOI:10.1145/3625456
  • Editor:
  • James Larus
Issue’s Table of Contents
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 September 2023
Published in CACM Volume 66, Issue 10

Check for updates

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1,286
  • Downloads (Last 6 weeks)186
Reflects downloads up to 16 Feb 2025

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Digital Edition

View this article in digital edition.

Digital Edition

Magazine Site

View this article on the magazine site (external)

Magazine Site

Login options

Full Access

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media