English
Related papers

Related papers: Crucible: Graphical Test Cases for Alloy Models

200 papers

Writing declarative models has numerous benefits, ranging from automated reasoning and correction of design-level properties before systems are built, to automated testing and debugging of their implementations after they are built. Alloy…

Software Engineering · Computer Science 2024-04-02 Ana Jovanovic , Allison Sullivan

Writing declarative models has numerous benefits, ranging from automated reasoning and correction of design-level properties be-fore systems are built, to automated testing and debugging of their implementations after they are built. Alloy…

Software Engineering · Computer Science 2021-10-25 Ana Jovanovic , Allison Sullivan

Alloy is well known a declarative modeling language. A key strength of Alloy is its scenario finding toolset, the Analyzer, which allows users to explore all valid scenarios that adhere to the model's constraints up to a user-provided…

Software Engineering · Computer Science 2024-06-17 Mohammad Nurullah Patwary , Ana Jovanovic , Allison Sullivan

Alloy is a lightweight formal specification language, supported by an IDE, which has proven well-suited for reasoning about software design in early development stages. The IDE provides a visualizer that produces graphical representations…

Human-Computer Interaction · Computer Science 2018-11-28 Rui Couto , José C. Campos , Nuno Macedo , Alcino Cunha

Formal techniques have been shown to be useful in the development of correct software. But the level of expertise required of practitioners of these techniques prohibits their widespread adoption. Formal techniques need to be tailored to…

Software Engineering · Computer Science 2007-05-23 William Heaven , Alessandra Russo

This paper presents a framework for modeling, simulating, and checking properties of critical systems based on the Alloy language -- a declarative, first-order, relational logic with a built-in transitive closure operator. The paper…

Logic in Computer Science · Computer Science 2014-08-05 Aboubakr Achraf El Ghazi , Ulrich Geilmann , Mattias Ulbrich , Mana Taghdiri

The software industry aims to provide customers with quality software. Testing software is a critical and sensitive stage in ensuring software quality. Due to the increasing popularity of mobile devices, the use of Android applications has…

Software Engineering · Computer Science 2022-09-07 Fatemeh Mosayeb , Shohreh Ajoudanian

Model finding, as embodied by SAT solvers and similar tools, is used widely, both in embedding settings and as a tool in its own right. For instance, tools like Alloy target SAT to enable users to incrementally define, explore, verify, and…

Computation and Language · Computer Science 2024-12-05 Siddhartha Prasad , Ben Greenman , Tim Nelson , Shriram Krishnamurthi

Writing declarative models has numerous benefits, ranging from automated reasoning and correction of design-level properties before systems are built to automated testing and debugging of their implementations after they are built.…

Software Engineering · Computer Science 2024-05-07 Guanxuan Wu , Allison Sullivan

Control algorithms in production environments typically require domain experts to tune their parameters and logic for specific scenarios. However, existing research predominantly focuses on algorithmic performance under ideal or default…

Artificial Intelligence · Computer Science 2025-10-22 Lianchen Jia , Chaoyang Li , Qian Houde , Tianchi Huang , Jiangchuan Liu , Lifeng Sun

Declarative specifications have a vital role to play in developing safe and dependable software systems. Writing specifications correctly, however, remains particularly challenging. This paper presents a controlled experiment on using large…

Software Engineering · Computer Science 2025-07-22 Yang Hong , Shan Jiang , Yulei Fu , Sarfraz Khurshid

The Unified Modeling Language (UML) is a widely used general purpose modeling language. Together with the Object Constraint Language (OCL), formal models can be described by defining the structure and behavior with UML and additional OCL…

Human-Computer Interaction · Computer Science 2017-01-31 Frank Hilken , Martin Gogolla

Alloy is formal modeling language based on first-order relational logic, with no specific support for specifying reactive systems. We propose the usage of temporal logic to specify such systems, and show how bounded model checking can be…

Software Engineering · Computer Science 2015-06-26 Alcino Cunha

Alloy is an increasingly popular lightweight specification language based on relational logic. Alloy models can be automatically verified within a bounded scope using off-the-shelf SAT solvers. Since false assertions can usually be…

Formal Languages and Automata Theory · Computer Science 2012-09-27 Nuno Macedo , Alcino Cunha

Agentic systems enable the intelligent use of research tooling, augmenting a researcher's ability to investigate and propose novel solutions to existing problems. Within Additive Manufacturing (AM), alloy selection and evaluation remains a…

Artificial Intelligence · Computer Science 2026-01-27 Peter Pak , Achuth Chandrasekhar , Amir Barati Farimani

Many properties related to security or concurrency must be encoded as so-called hyperproperties, temporal properties that allow reasoning about multiple traces of a system. However, despite recent advances on model checking hyperproperties,…

Software Engineering · Computer Science 2026-05-11 Nuno Macedo , Hugo Pacheco

Fault localization is a practical research topic that helps developers identify code locations that might cause bugs in a program. Most existing fault localization techniques are designed for imperative programs (e.g., C and Java) and rely…

Software Engineering · Computer Science 2021-02-23 Guolong Zheng , ThanhVu Nguyen , Simón Gutiérrez Brida , Germán Regis , Marcelo F. Frias , Nazareno Aguirre , Hamid Bagheri

Alloy discovery is constrained by vast compositional spaces, competing objectives, and prohibitive experimental costs. Although simulations and machine learning have each accelerated parts of this process, unifying scientific knowledge,…

This paper explores the process of validation for the abstract syntax of a graphical notation. We define an unified specification for five of the UML diagrams used by the Discovery Method and, in this document, we illustrate how diagrams…

Software Engineering · Computer Science 2008-02-18 Anthony J. H. Simons , Carlos Alberto Fernandez-y-Fernandez

Software systems typically consist of various interacting components and units. While these components can be tested and shown to work correctly in isolation, when integrated and start interacting with each other, they may fail to produce…

Software Engineering · Computer Science 2018-12-07 Mehrdad Saadatmand
‹ Prev 1 2 3 10 Next ›