An ACL2s Interface to Z3

We present Lisp-Z3, an extension to the ACL2s systems programming framework (ASPF) that supports the use of the Z3 satisfiability modulo theories (SMT) solver.Lisp-Z3 allows one to develop tools written using the full feature set of Common Lisp that can use both ACL2/s (either ACL2 or ACL2s) and Z3 as services, combining the power of SMT and interactive theorem proving.Lisp-Z3 is usable by anyone who would like to interact with Z3 from Common Lisp, as it does not depend on the availability of ACL2/s.We discuss the use of Lisp-Z3 in three applications.The first is a Sudoku solver.The second is SeqSolve, a string solver which solved a larger number of benchmark problems more quickly than any other existing solver at the time of its publishing.Finally, Lisp-Z3 was also used in the context of hardware-in-the-loop fuzzing of wireless routers, where low latency was an important goal.The latter two applications leveraged the ability of Lisp-Z3 to integrate Z3 with ACL2s code.We have further plans to use Lisp-Z3 inside of ACL2s to provide more powerful automated support for dependent types, and in particular more efficient generation of counterexamples to properties involving dependent types.This paper describes the usage and implementation of Lisp-Z3, as well as an evaluation of its use in the aforementioned applications.

Authors

Institutions

Publication Details

Journal
Electronic Proceedings in Theoretical Computer Science
Published
2025-07-24
DOI
https://doi.org/10.4204/eptcs.423.10
Primary Topic
Software Testing and Debugging Techniques
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

An ACL2s Interface to Z3

Panagiotis Manolios, Andrew T. Walter
Electronic Proceedings in Theoretical Computer Science
Software Testing and Debugging Techniques
article

An ACL2s Interface to Z3

Panagiotis Manolios, Andrew T. Walter
article en

Abstract

We present Lisp-Z3, an extension to the ACL2s systems programming framework (ASPF) that supports the use of the Z3 satisfiability modulo theories (SMT) solver.Lisp-Z3 allows one to develop tools written using the full feature set of Common Lisp that can use both ACL2/s (either ACL2 or ACL2s) and Z3 as services, combining the power of SMT and interactive theorem proving.Lisp-Z3 is usable by anyone who would like to interact with Z3 from Common Lisp, as it does not depend on the availability of ACL2/s.We discuss the use of Lisp-Z3 in three applications.The first is a Sudoku solver.The second is SeqSolve, a string solver which solved a larger number of benchmark problems more quickly than any other existing solver at the time of its publishing.Finally, Lisp-Z3 was also used in the context of hardware-in-the-loop fuzzing of wireless routers, where low latency was an important goal.The latter two applications leveraged the ability of Lisp-Z3 to integrate Z3 with ACL2s code.We have further plans to use Lisp-Z3 inside of ACL2s to provide more powerful automated support for dependent types, and in particular more efficient generation of counterexamples to properties involving dependent types.This paper describes the usage and implementation of Lisp-Z3, as well as an evaluation of its use in the aforementioned applications.

Electronic Proceedings in Theoretical Computer ScienceVol. 423
Universidad del Noreste (MX)
Openalex Percentile: Top 82%
Software Testing and Debugging Techniques
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.

An ACL2s Interface to Z3 — Panagiotis Manolios, Andrew T. Walter · Electronic Proceedings in Theoretical Computer Science (2025) | TGRS Research Map | TGRS