The Design of a Relational Engine
Author(s)
Torlak, Emina; Jackson, Daniel
DownloadMIT-CSAIL-TR-2006-068.pdf (434.2Kb)
Additional downloads
Other Contributors
Software Design
Advisor
Daniel Jackson
Metadata
Show full item recordAbstract
The key design challenges in the construction of a SAT-based relational engine are described, and novel techniques are proposed to address them. An efficient engine must have a mechanism for specifying partial solutions, an effective symmetry detection and breaking scheme, and an economical translation from relational to boolean logic. These desiderata are addressed with three new techniques: a symmetry detection algorithm that works in the presence of partial solutions, a sparse-matrix representation of relations, and a compact representation of boolean formulas inspired by boolean expression diagrams and reduced boolean circuits. The presented techniques have been implemented and evaluated, with promising results.
Date issued
2006-09-29Other identifiers
MIT-CSAIL-TR-2006-068
Series/Report no.
Massachusetts Institute of Technology Computer Science and Artificial Intelligence Laboratory