The C programming language
On the complexity of computing the volume of a polyhedron
SIAM Journal on Computing
On the hardness of approximate reasoning
Artificial Intelligence
Counting Models Using Connected Components
Proceedings of the Seventeenth National Conference on Artificial Intelligence and Twelfth Conference on Innovative Applications of Artificial Intelligence
APAQS '00 Proceedings of the The First Asia-Pacific Conference on Quality Software (APAQS'00)
Algorithms and Complexity Results for #SAT and Bayesian Inference
FOCS '03 Proceedings of the 44th Annual IEEE Symposium on Foundations of Computer Science
Automatic Debugging of Real-Time Systems Based on Incremental Satisfiability Counting
IEEE Transactions on Computers
Decision Procedures: An Algorithmic Point of View
Decision Procedures: An Algorithmic Point of View
The road not taken: Estimating path execution frequency statically
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Using more reasoning to improve #SAT solving
AAAI'07 Proceedings of the 22nd national conference on Artificial intelligence - Volume 1
From sampling to model counting
IJCAI'07 Proceedings of the 20th international joint conference on Artifical intelligence
CAV'07 Proceedings of the 19th international conference on Computer aided verification
Algorithms for propositional model counting
LPAR'07 Proceedings of the 14th international conference on Logic for programming, artificial intelligence and reasoning
TACAS'08/ETAPS'08 Proceedings of the Theory and practice of software, 14th international conference on Tools and algorithms for the construction and analysis of systems
Heuristics for fast exact model counting
SAT'05 Proceedings of the 8th international conference on Theory and Applications of Satisfiability Testing
A new approach to model counting
SAT'05 Proceedings of the 8th international conference on Theory and Applications of Satisfiability Testing
A fast linear-arithmetic solver for DPLL(T)
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
Program analysis: from qualitative analysis to quantitative analysis (NIER track)
Proceedings of the 33rd International Conference on Software Engineering
Probabilistic symbolic execution
Proceedings of the 2012 International Symposium on Software Testing and Analysis
Solving generalized optimization problems subject to SMT constraints
FAW-AAIM'12 Proceedings of the 6th international Frontiers in Algorithmics, and Proceedings of the 8th international conference on Algorithmic Aspects in Information and Management
Performance estimation using symbolic data
Theories of Programming and Formal Methods
Hi-index | 0.02 |
There are many works on the satisfiability problem for various logics and constraint languages, such as SAT and Satisfiability Modulo Theories (SMT). On the other hand, the counting version of decision problems is also quite important in automated reasoning. In this paper, we study a counting version of SMT, i.e., how to compute the volume of the solution space, given a set of Boolean combinations of linear constraints. The problem generalizes the model counting problem and the volume computation problem for convex polytopes. It has potential applications to program analysis and verification, as well as approximate reasoning, yet it has received little attention. We first give a straightforward method, and then propose an improved algorithm. We also describe two ways of incorporating theory-level lemma learning technique into the algorithm. They have been implemented, and some experimental results are given. Through an example program, we show that our tool can be used to compute how often a given program path is executed.