Algorithmic program synthesis: introduction
R Bodík, B Jobstmann - International journal on software tools for …, 2013 - Springer
Program synthesis is a process of producing an executable program from a specification.
Algorithmic synthesis produces the program automatically, without an intervention from an …
Algorithmic synthesis produces the program automatically, without an intervention from an …
Evaluating the suitability of state‐based formal methods for industrial deployment
A Mashkoor, F Kossak, A Egyed - Software: Practice and …, 2018 - Wiley Online Library
After a number of success stories in safety‐critical domains, we are starting to witness
applications of formal methods in contemporary systems and software engineering …
applications of formal methods in contemporary systems and software engineering …
Contract-based data structure repair using Alloy
R Nokhbeh Zaeem, S Khurshid - … , Maribor, Slovenia, June 21-25, 2010 …, 2010 - Springer
Contracts and specifications have long been used in object-oriented design, programming
and testing to enhance reliability before software deployment. However, the use of …
and testing to enhance reliability before software deployment. However, the use of …
Trademaker: Automated dynamic analysis of synthesized tradespaces
H Bagheri, C Tang, K Sullivan - … of the 36th International Conference on …, 2014 - dl.acm.org
System designers today are focusing less on point solutions for complex systems and more
on design spaces, often with a focus on understanding tradeoffs among non-functional …
on design spaces, often with a focus on understanding tradeoffs among non-functional …
Automated synthesis and dynamic analysis of tradeoff spaces for object-relational mapping
H Bagheri, C Tang, K Sullivan - IEEE Transactions on Software …, 2016 - ieeexplore.ieee.org
Producing software systems that achieve acceptable tradeoffs among multiple non-
functional properties remains a significant engineering problem. We propose an approach to …
functional properties remains a significant engineering problem. We propose an approach to …
Applications and extensions of Alloy: past, present and future
Alloy is a declarative language for lightweight modelling and analysis of software. The core
of the language is based on first-order relational logic, which offers an attractive balance …
of the language is based on first-order relational logic, which offers an attractive balance …
An imperative extension to Alloy
We extend the Alloy language with the standard imperative constructs; we show the mix of
declarative and imperative constructs to be useful in modeling dynamic systems. We present …
declarative and imperative constructs to be useful in modeling dynamic systems. We present …
Icedust 2: Derived bidirectional relations and calculation strategy composition
Derived values are values calculated from base values. They can be expressed with views
in relational databases, or with expressions in incremental or reactive programming …
in relational databases, or with expressions in incremental or reactive programming …
Solver-based sketching of alloy models using test valuations
We introduce ASketch, the first framework for sketching models in the Alloy language. The
Alloy Analyzer is a SAT-based constraint solver that allows users to create valuations for …
Alloy Analyzer is a SAT-based constraint solver that allows users to create valuations for …
Improvements to transitive-closure-based model checking in Alloy
S Farheen - 2018 - uwspace.uwaterloo.ca
Model checking, which refers to the verification of temporal properties of a transition system,
is a common formal method for verifying models. Transitive-closure-based model checking …
is a common formal method for verifying models. Transitive-closure-based model checking …