3.8 Proceedings Paper

JavaSMT 3: Interacting with SMT Solvers in Java

Journal

COMPUTER AIDED VERIFICATION, PT II, CAV 2021
Volume 12760, Issue -, Pages 195-208

Publisher

SPRINGER INTERNATIONAL PUBLISHING AG
DOI: 10.1007/978-3-030-81688-9_9

Keywords

Satisfiability Modulo Theories; SMT Solver; Java; API

Funding

  1. Deutsche Forschungsgemeinschaft (DFG) [378803395]

Ask authors/readers for more resources

SMT technology has many applications, but different solvers have different APIs, making it difficult to switch between them. JAVASMT is a unified API framework that supports multiple SMT solvers.
Satisfiability Modulo Theories (SMT) is an enabling technology with many applications, especially in computer-aided verification. Due to advances in research and strong demand for solvers, there are many SMT solvers available. Since different implementations have different strengths, it is often desirable to be able to substitute one solver by another. Unfortunately, the solvers have vastly different APIs and it is not easy to switch to a different solver (lock-in effect). To tackle this problem, we developed JAVASMT, which is a solver-independent framework that unifies the API for using a set of SMT solvers. This paper describes version 3 of JAVASMT, which now supports eight SMT solvers and offers a simpler build and update process. Our feature comparisons and experiments show that different SMT solvers significantly differ in terms of feature support and performance characteristics. A unifying Java API for SMT solvers is important to make the SMT technology accessible for software developers. Similar APIs exist for other programming languages.

Authors

I am an author on this paper
Click your name to claim this paper and add it to your profile.

Reviews

Primary Rating

3.8
Not enough ratings

Secondary Ratings

Novelty
-
Significance
-
Scientific rigor
-
Rate this paper

Recommended

No Data Available
No Data Available