Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Introduction to algorithms
ECAI '92 Proceedings of the 10th European conference on Artificial intelligence
Combinational equivalence checking using satisfiability and recursive learning
DATE '99 Proceedings of the conference on Design, automation and test in Europe
Symbolic model checking using SAT procedures instead of BDDs
Proceedings of the 36th annual ACM/IEEE Design Automation Conference
The design and implementation of an intentional naming system
Proceedings of the seventeenth ACM symposium on Operating systems principles
Alcoa: the alloy constraint analyzer
Proceedings of the 22nd international conference on Software engineering
Automating first-order relational logic
SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
Chaff: engineering an efficient SAT solver
Proceedings of the 38th annual Design Automation Conference
Combining strengths of circuit-based and CNF-based algorithms for a high-performance SAT solver
Proceedings of the 39th annual Design Automation Conference
Lightweight Analysis of Object Interactions
TACS '01 Proceedings of the 4th International Symposium on Theoretical Aspects of Computer Software
The Quest for Efficient Boolean Satisfiability Solvers
CADE-18 Proceedings of the 18th International Conference on Automated Deduction
A hybrid SAT-based decision procedure for separation logic with uninterpreted functions
Proceedings of the 40th annual Design Automation Conference
Exploring the Design of an Intentional Naming Scheme with an Automatic Constraint Analyzer
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
Probing-Based Preprocessing Techniques for Propositional Satisfiability
ICTAI '03 Proceedings of the 15th IEEE International Conference on Tools with Artificial Intelligence
Faster constraint solving with subtypes
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Efficient translation of boolean formulas to CNF in formal verification of microprocessors
Proceedings of the 2004 Asia and South Pacific Design Automation Conference
Network configuration management via model finding
LISA '05 Proceedings of the 19th conference on Large Installation System Administration Conference - Volume 19
Automatic SAT-compilation of planning problems
IJCAI'97 Proceedings of the Fifteenth international joint conference on Artifical intelligence - Volume 2
NiVER: non-increasing variable elimination resolution for preprocessing SAT instances
SAT'04 Proceedings of the 7th international conference on Theory and Applications of Satisfiability Testing
Propositional Satisfiability and Constraint Programming: A comparative survey
ACM Computing Surveys (CSUR)
Program slicing for declarative models
ACM SIGSOFT Software Engineering Notes
Kato: A Program Slicing Tool for Declarative Specifications
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Constraint Prioritization for Efficient Analysis of Declarative Models
FM '08 Proceedings of the 15th international symposium on Formal Methods
Generating representation invariants of structurally complex data
TACAS'07 Proceedings of the 13th international conference on Tools and algorithms for the construction and analysis of systems
Using model checking to analyze static properties of declarative models
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Hi-index | 0.00 |
Advances in SAT solver technology have enabled many automated analysis and reasoning tools to reduce their input problem to a SAT problem, and then to use an efficient SAT solver to solve the underlying analysis or reasoning problem. The solving time for SAT solvers can vary substantially for semantically identical SAT problems depending on how the problem is expressed. This property motivates the development of new optimization techniques whose goal is to produce more efficiently solvable SAT problems, thereby improving the overall performance of the analysis or reasoning tool. This paper presents our experience using several mechanical techniques that enable the Alloy Analyzer to generate optimized SAT formulas from first-order logic formulas. These techniques are inspired by similar techniques from the field of optimizing compilers, suggesting the potential presence of underlying connections between optimization problems from two very different domains. Our experimental results show that our techniques can deliver substantial performance improvement results—in some cases, they reduce the solving time by an order of magnitude.