Visible to the public AlloyMax: Bringing Maximum Satisfaction to Relational SpecificationsConflict Detection Enabled

TitleAlloyMax: Bringing Maximum Satisfaction to Relational Specifications
Publication TypeConference Paper
Year of Publication2021
AuthorsZhang, Changjian, Wagner, Ryan, Orvalho, Pedro, Garlan, David, Manquinho, Vasco, Martins, Ruben, Kang, Eunsuk
Conference NameThe ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE) 2021
Date Published08/2021
Conference LocationVirtual
Keywords2021: October, CMU
AbstractAlloy is a declarative modeling language based on a first-order relational logic. Its constraint-based analysis has enabled a wide range of applications in software engineering, including configuration synthesis, bug finding, test-case generation, and security analysis. Certain types of analysis tasks in these domains involve finding an optimal solution. For example, in a network configuration problem, instead of finding any valid configuration, it may be desirable to find one that is most permissive (i.e., it permits a maximum number of packets). Due to its dependence on SAT, however, Alloy cannot be used to specify and analyze these types of problems. We propose AlloyMax, an extension of Alloy with a capability to express and analyze problems with optimal solutions. AlloyMax introduces (1) a small addition of language constructs that can be used to specify a wide range of problems that involve optimality and (2) a new analysis engine that leverages a Maximum Satisfiability (MaxSAT) solver to generate optimal solutions. To enable this new type of analysis, we show how a specification in a first-order relational logic can be translated into an input format of MaxSAT solvers—namely, a Boolean formula in weighted conjunctive normal form (WCNF). We demonstrate the applicability and scalability of AlloyMax on a benchmark of problems. To our knowledge, AlloyMax is the first approach to enable analysis with optimality in a relational modeling language, and we believe that AlloyMax has the potential to bring a wide range of new applications to Alloy.
DOIdoi.org/10.1145/3468264.3468587
Citation Keynode-81242

Other available formats:

Zhang_AlloyMax_Garlan.pdf
AttachmentTaxonomyKindSize
Zhang_AlloyMax_Garlan.pdfPDF document321.26 KBDownloadPreview
AttachmentSize
bytes