Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article
Free access

Satisfiability modulo theories: introduction and applications

Published: 01 September 2011 Publication History

Abstract

Checking the satisfiability of logical formulas, SMT solvers scale orders of magnitude beyond custom ad hoc solvers.

References

[1]
Audemard, G., Bertoli, P., Cimatti, A., Kornilowicz, A., and Sebastiani, R. A SAT -based approach for solving formulas over Boolean and linear mathematical propositions. In Proceedings of the Conference on Automated Deduction, Vol. 2392 of LNCS (Copenhagen, July 27--30). Springer-Verlag, Berlin, 2002.
[2]
Ball, T. and Rajamani, S.K. The SLAM project: Debugging system software via static analysis. (Symposium on Principles of Programming Languages). SIGPLAN Notices 37, 1 (Jan. 16--18, 2002), 1--3.
[3]
Barnett, M., Leino, K.R.M., and Schulte, W. The Spec# programming system: An overview. In Proceedings of the International Workshop on Construction and Analysis of Safe, Secure and Interoperable Smart Devices, LNCS 3362 (Marseille, Mar. 10--13). Springer-Verlag, Berlin, 2005, 49--69.
[4]
Barrett, C., de Moura, L., and Stump, A. Design and results of the first Satisfiability Modulo Theories Competition. Journal of Automated Reasoning 35, 4 (Nov. 2005), 372--390.
[5]
Barrett, C., Dill, D., and Stump, A. Checking satisfiability of first-order formulas by incremental translation to SAT. In Proceedings of the International Conference on Computer Aided Verification (Copenhagen, July, 27--31). Springer-Verlag, Berlin 2002, 236--249.
[6]
Barrett, C., Sebastiani, R., Seshia, S.A., and Tinelli, C. Satisfiability Modulo Theories, Vol. 185 of Frontiers in Artificial Intelligence and Applications, Chapter 26. IOS Press, Feb. 2009, 825--885.
[7]
Barrett, C. and Tinelli, C. CVC3. In Proceedings of the 19th International Conference on Computer Aided Verification, Vol. 4590 of LNCS, W. Damm and H. Hermanns, Eds. (Berlin, July 3--7). Springer-Verlag, Berlin, 2007, 298--302.
[8]
Bofill, M., Nieuwenhuis, R., Oliveras, A., Rodríguez Carbonell, E., and Rubio, A. The Barcelogic SMT Solver. In Proceedings of the 20th International Conference on Computer Aided Verification, Vol. 5123 of LNCS, A. Gupta and S. Malik, Eds. (Princeton, July 7--14). Springer-Verlag, Berlin, 2008, 294--298.
[9]
Bozzano, M., Bruttomesso, R., Cimatti, A., Junttila, T.A., Ranise, S., van Rossum, P., and Sebastiani, R. Efficient satisfiability modulo theories via delayed theory combination. In Proceedings of the International Conference on Computer Aided Verification, Vol. 3576 of LNCS, K. Etessami and S. K. Rajamani, Eds. (Edinburgh, July 6--12). Springer-Verlag, Berlin, 2005, 335--349.
[10]
Bruttomesso, R., Cimatti, A., Franzén, A., Griggio, A., and Sebastiani, R. The MathSAT 4 SMT Solver. In Proceedings of the 18th International Conference on Computer Aided Verification, Vol. 5123 of LNCS. Springer-Verlag, Berlin, 2008.
[11]
Cohen, E., Dahlweid, M., Hillebrand, M., Leinenbach, D., Moskal, M., Santen, T., Schulte, W., and Tobies, S. VCC: A practical system for verifying concurrent C. In Proceedings of the International Conference on Theorem Proving in Higher Order Logics (Munich, Aug. 17--20). Springer-Verlag. Berlin, 2009, 23--42.
[12]
Cook, S.A. The complexity of theorem-proving procedures. In Proceedings of the Third Annual ACM Symposium on Theory of Computing (May 3--5). ACM Press, New York, 1971, 151--158.
[13]
Davis, M., Logemann, G., and Loveland, D. A machine program for theorem proving. Commun. ACM 5, 2 (July 1962), 394--397.
[14]
de Moura, L. and Bjørner, N. Z3: An efficient SMT solver. In Proceedings of the International Conference on tools and algorithms for the Construction and Analysis of Systems, Vol. 4963 of LNCS, C.R. Ramakrishnan and J. Rehof, Eds. (Budapest, Mar. 29- Apr. 6). Springer-Verlag, Berlin, 2008, 337--340.
[15]
de Moura, L. and Rueß, H. Lemmas on demand for satisfiability solvers. In Proceedings of the International Conference on Theory and Applications of Satisfiability Testing (Cincinnati, May 6--9, 2002).
[16]
Detlefs, D., Nelson, G., and Saxe, J.B. Simplify: A theorem prover for program checking. Journal of the ACM 52, 3 (May 2005), 365--473.
[17]
Downey, P.J., Sethi, R., and Tarjan, R.E. Variations on the common subexpression problem. Journal of the ACM 27, 4 (Oct. 1980), 758--771.
[18]
Dutertre, B. and de Moura, L. A fast linear-arithmetic solver for DPLL(T). In Proceedings of the 16th International Conference on Computer Aided Verification, Vol. 4144 of LNCS (Seattle, Aug. 17--20). Springer-Verlag, Berlin, 2006, 81--94.
[19]
Filliâtre, J.-C. Why: A Multi-Language Multi-Prover Verification Tool. Technical Report 1366, Université Paris Sud, 2003.
[20]
Flanagan, C., Joshi, R., Ou, X., and Saxe, J.B. Theorem proving using lazy proof explication. In Proceedings of the 15th International Conference on Computer Aided Verification (Boulder, CO, July 8--12). Springer-Verlag, Berlin, 2003, 355--367.
[21]
Flanagan, C., Leino, K.R.M., Lillibridge, M., Nelson, G., Saxe, J.B., and Stata, R. Extended static checking for Java. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (Berlin, June 17--19). ACM Press, New York, 2002, 234--245.
[22]
Ghilardi, S., Nicolini, E., and Zucchelli, D. A comprehensive framework for combined decision procedures. In Proceedings of the Fifth International Workshop on Frontiers of Combining Systems, Vol. 3717 of LNCS, B. Gramlich, Ed. (Vienna, Sept. 19--21). Springer-Verlag, Berlin, 2005, 1--30.
[23]
Godefroid, P., de Halleux, J., Nori, A.V., Rajamani, S.K., Schulte, W., Tillmann, N., and Levin, M.Y. Automating software testing using program analysis. IEEE Software 25, 5 (Sept./Oct. 2008), 30--37.
[24]
Grieskamp, W., Kicillof, N., MacDonald, D., Nandan, A., Stobie, K., and Wurden, F.L. Model-based quality assurance of Windows protocol documentation. In Proceedings of the First International Conference on Software Testing, Verification, and Validation (Lillehammer, Norway, Apr. 9--11). IEEE Computer Society Press, 2008, 502--506.
[25]
Henzinger, T.A., Jhala, R., Majumdar, R., and Sutre, G. Software verification with blast. In Proceedings of the 10th International SPIN Workshop, Vol. 2648 of LNCS, T. Ball and S. R. Rajamani, Eds. (Portland, May 9--10). Springer-Verlag, Berlin, 2003, 235--239.
[26]
Kaufmann, M., Manolios, P., and Moore, J.S. Computer-Aided Reasoning: An Approach. Kluwer Academic, June 2000.
[27]
Malik, S. and Zhang, L. Boolean satisfiability from theoretical hardness to practical success. Commun. ACM 52, 8 (Aug. 2009), 76--82.
[28]
McCarthy, J. Towards a mathematical science of computation. In Congress of the International Federation for Information Processing, 1962, 21--28.
[29]
Nelson, G. and Oppen, D.C. Simplification by cooperating decision procedures. ACM Transactions on Programming Languages and Systems 1, 2 (Oct. 1979), 245--257.
[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). Journal of the ACM 53, 6 (Nov. 2006), 937--977.
[31]
Oppen, D.C. Complexity, convexity and combinations of theories. Theoretical Computer Science 12, 3 (1980), 291--302.
[32]
Owre, S., Rushby, J.M., and Shankar, N. PVS: A prototype verification system. In Proceedings of the 11th International Conference on Automated Deduction (Saratoga, NY, June 15--18). Springer-Verlag, Berlin, 1992, 748--752.
[33]
Ranise, S. and Tinelli, C. The Satisfiability Modulo Theories Library (SMT-LIB), 2006; http://www.SMT-LIB.org
[34]
Tinelli, C. and Zarba, C.G. Combining nonstably infinite theories. Journal of Automated Reasoning 34, 3 (Apr. 2005), 209--238.

Cited By

View all
  • (2024)Mixed-Criticality Traffic Scheduling in Time-Sensitive Networking Using Multiple Combinatorial Packing Based on Free Time DomainElectronics10.3390/electronics1313264413:13(2644)Online publication date: 5-Jul-2024
  • (2024)Falsification via Barrier Certificates2024 American Control Conference (ACC)10.23919/ACC60939.2024.10644795(4657-4662)Online publication date: 10-Jul-2024
  • (2024)Survey of Machine Learning for Software-assisted Hardware Design Verification: Past, Present, and ProspectACM Transactions on Design Automation of Electronic Systems10.1145/366130829:4(1-42)Online publication date: 24-Apr-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Communications of the ACM
Communications of the ACM  Volume 54, Issue 9
September 2011
121 pages
ISSN:0001-0782
EISSN:1557-7317
DOI:10.1145/1995376
Issue’s Table of Contents
Permission to make digital or hard copies of all or part 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 components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 September 2011
Published in CACM Volume 54, Issue 9

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article
  • Popular
  • Refereed

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1,407
  • Downloads (Last 6 weeks)175
Reflects downloads up to 22 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Mixed-Criticality Traffic Scheduling in Time-Sensitive Networking Using Multiple Combinatorial Packing Based on Free Time DomainElectronics10.3390/electronics1313264413:13(2644)Online publication date: 5-Jul-2024
  • (2024)Falsification via Barrier Certificates2024 American Control Conference (ACC)10.23919/ACC60939.2024.10644795(4657-4662)Online publication date: 10-Jul-2024
  • (2024)Survey of Machine Learning for Software-assisted Hardware Design Verification: Past, Present, and ProspectACM Transactions on Design Automation of Electronic Systems10.1145/366130829:4(1-42)Online publication date: 24-Apr-2024
  • (2024)A Survey on Cyber-Resilience Approaches for Cyber-Physical SystemsACM Computing Surveys10.1145/365295356:8(1-37)Online publication date: 26-Apr-2024
  • (2024)Scheduling for Cyber-Physical Systems with Heterogeneous Processing Units under Real-World ConstraintsProceedings of the 38th ACM International Conference on Supercomputing10.1145/3650200.3656625(298-311)Online publication date: 30-May-2024
  • (2024)Generating Feature Models with UVL's Full ExpressivenessProceedings of the 28th ACM International Systems and Software Product Line Conference10.1145/3646548.3676602(61-65)Online publication date: 2-Sep-2024
  • (2024)Extensions and Scalability Experiments of a Generic Model-Driven Architecture for Variability Model ReasoningProceedings of the ACM/IEEE 27th International Conference on Model Driven Engineering Languages and Systems10.1145/3640310.3674090(126-137)Online publication date: 22-Sep-2024
  • (2024)SMT-as-a-Service for Fog-Supported Cyber-Physical SystemsProceedings of the 25th International Conference on Distributed Computing and Networking10.1145/3631461.3631562(154-163)Online publication date: 4-Jan-2024
  • (2024)Cryptanalysis of Selected ARX-Based Block CiphersVietnam Journal of Computer Science10.1142/S2196888824500143(1-16)Online publication date: 1-Jul-2024
  • (2024)A Survey of Software Dynamic Analysis MethodsProgramming and Computing Software10.1134/S036176882401007950:1(90-114)Online publication date: 1-Feb-2024
  • Show More Cited By

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

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media