Approximate counting in SMT and value estimation for probabilistic programs

38Citations
Citations of this article
3Readers
Mendeley users who have this article in their library.

This article is free to access.

Abstract

SMT, or model counting for logical theories, is a wellknown hard problem that generalizes such tasks as counting the number of satisfying assignments to a Boolean formula and computing the volume of a polytope. In the realm of satisfiability modulo theories (SMT) there is a growing need for model counting solvers, coming from several application domains (quantitative information flow, static analysis of probabilistic programs). In this paper, we show a reduction from an approximate version of #SMT to SMT. We focus on the theories of integer arithmetic and linear real arithmetic. We propose model counting algorithms that provide approximate solutions with formal bounds on the approximation error. They run in polynomial time and make a polynomial number of queries to the SMT solver for the underlying theory, exploiting “for free” the sophisticated heuristics implemented within modern SMT solvers. We have implemented the algorithms and used them to solve a value estimation problem for a model of loop-free probabilistic programs with nondeterminism.

Cite

CITATION STYLE

APA

Chistikov, D., Dimitrova, R., & Majumdar, R. (2015). Approximate counting in SMT and value estimation for probabilistic programs. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9035, pp. 320–334). Springer Verlag. https://doi.org/10.1007/978-3-662-46681-0_26

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free