Repository logo
Log in(current)
Repository logoMIT Open ScholarshipDSpace@MIT
  1. Home
  2. MIT Open Access Articles
  3. MIT Open Access Articles
  4. Alloy*: a general-purpose higher-order relational constraint solver

Alloy*: a general-purpose higher-order relational constraint solver

Thumbnail Image
Download
Name

mit-tr14-hola.pdf

Description
Accepted version
Size

585.41 KB

Format

Adobe PDF

Checksum (MD5)

43f775c294315f2b1835fae638b40786

sword-2019-05-31T17:21:19.original.xml (130 B)
Original SWORD entry document
Author(s)
Milicevic, Aleksandar
•
Near, Joseph P
•
Kang, Eunsuk
•
Jackson, Daniel
Date Issued
2019
Journal
Formal Methods in System Design
Publisher
Springer Science and Business Media LLC
Version
Author's final manuscript
Abstract
© 2017, Springer Science+Business Media New York. The last decade has seen a dramatic growth in the use of constraint solvers as a computational mechanism, not only for analysis of software, but also at runtime. Solvers are available for a variety of logics but are generally restricted to first-order formulas. Some tasks, however, most notably those involving synthesis, are inherently higher order; these are typically handled by embedding a first-order solver (such as a SAT or SMT solver) in a domain-specific algorithm. Using strategies similar to those used in such algorithms, we show how to extend a first-order solver (in this case Kodkod, a model finder for relational logic used as the engine of the Alloy Analyzer) so that it can handle quantifications over higher-order structures. The resulting solver is sufficiently general that it can be applied to a range of problems; it is higher order, so that it can be applied directly, without embedding in another algorithm; and it performs well enough to be competitive with specialized tools. Just as the identification of first-order solvers as reusable backends advanced the performance of specialized tools and simplified their architecture, factoring out higher-order solvers may bring similar benefits to a new class of tools.
MIT Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Terms of Use
Creative Commons Attribution-Noncommercial-Share Alike
http://creativecommons.org/licenses/by-nc-sa/4.0/
Persistent DSpace Link
https://hdl.handle.net/1721.1/135729
DOI of Published Version
https://doi.org/10.1007/S10703-016-0267-2
Repository logo
PrivacyPermissionsAccessibilityContact us
Repository logo
Notify us about copyright concerns.