A practical comparison of Alloy and Spin

@article{Zave2014APC,
  title={A practical comparison of Alloy and Spin},
  author={Pamela Zave},
  journal={Formal Aspects of Computing},
  year={2014},
  volume={27},
  pages={239-253}
}
  • P. Zave
  • Published 1 March 2015
  • Computer Science
  • Formal Aspects of Computing
Because potential users have to choose a formal method before they can start using one, research on assessing the applicability of specific formal methods might be as effective in encouraging their use as work on the methods themselves. This comparison of Alloy and Spin is based on a demanding project that exploited the full capabilities of both languages and tools. The study exposed issues not apparent from more superficial studies, and resulted in some unexpected conclusions. The paper… 

Figures and Tables from this paper

How to Select the Suitable Formal Method for an Industrial Application: A Survey
TLDR
This paper argues that besides technical grounds e.g., modeling capabilities and supported development phases, formal methods should also be evaluated from social and industrial perspectives and presents an evaluation of "ABZ" methods based on the stipulated criteria.
How to Evaluate the Suitability of a Formal Method for Industrial Deployment? A Survey Technical Report SCCH-TR-1603
TLDR
It is argued that besides technical grounds (e.g., modeling capabilities and supported development phases), formal methods should also be evaluated from social and industrial perspectives, and several state-based formal methods are evaluated on the stipulated criteria.
Evaluating the suitability of state‐based formal methods for industrial deployment
TLDR
The research shows that besides technical grounds (eg, modeling capabilities and supported development phases), formal methods should also be evaluated from social and industrial perspectives and it is found out that it is not possible to generate a matrix that renders the selection of the right formal method an automatic process.
Synthesis of Property-Preserving Mappings
TLDR
This paper provides a formalization of the synthesis problem and proposes a technique for synthesizing a mapping based on symbolic constraint search, and describes the prototype implementation and a case study demonstrating the application of the technique to synthesizing secure mappings for OAuth.
A web-based social environment for Alloy
TLDR
It’s in the best interest of the community to achieve and easier access to this tool through a web platform that shall support it in real time and also allow sharing models developed in it by users.
Synthesis of Property-Preserving Platform Mappings
TLDR
This paper provides a formalization of the synthesis problem, and proposes a technique for synthesizing a mapping based on symbolic constraint search, and describes the prototype implementation and a case study demonstrating the application of the technique to synthesizing secure platform mappings for OAuth.
Applying Formal Methods to Networking: Theory, Techniques, and Applications
TLDR
This paper presents a self-contained tutorial of the formidable amount of work that has been done in formal methods and presents a survey of its applications to networking.
Rigorous State-Based Methods: 7th International Conference, ABZ 2020, Ulm, Germany, May 27–29, 2020, Proceedings
TLDR
This paper defines a concept and a verification methodology for adding concurrency to a sequential refinement tower of abstract state machines, that is based on data refinement and a component structure, and gives a verify methodology for such atomicity refinements.
Improving the Visualization of Alloy Instances
TLDR
The main contribution of this paper is a principled approach to generate instance visualizations, which improves the current Alloy Visualizer, focusing on the representation of behavior.
Verification of the Chord protocol in TLA
TLDR
This thesis presents a formal specification of the Chord distributed hash table protocol, using the TLA specification language, and shows that the introduction of failures leads the specification to admit several behaviors which break the safety properties Chord promises, potentially leading to permanent partitions in the network and performance degradation.
...
1
2
3
4
...

References

SHOWING 1-10 OF 34 REFERENCES
The SPIN Model Checker - primer and reference manual
TLDR
This is the most comprehensive reference guide to SPIN, written by the principal designer of the tool, and gives detailed advice on methods for tackling the most complex software verification problems.
Using lightweight modeling to understand chord
TLDR
By combining the right selection of pseudocode and textual hints from several papers, and fixing flaws revealed by analysis, it is possible to get a version of Chord that may be correct.
Almost-Invariants: From Bugs in Distributed Systems to Invariants
TLDR
This paper proposes an approach to observe the system behavior and automatically infer invariants which reveal implementation bugs, and demonstrates Avenger's ability to identify the almost-invariants that lead the developer to programming errors.
Rigorous specification and conformance testing techniques for network protocols, as applied to TCP, UDP, and sockets
TLDR
This paper presents a practical technique for rigorous protocol specification that supports specification-based testing, and argues that the technique is also applicable 'pre-hoc', in the design phase of new protocols.
Software Abstractions - Logic, Language, and Analysis
TLDR
This revised edition of Software Abstractions updates the text, examples, and appendixes to be fully compatible with the latest version of Alloy, a language that captures the essence of software abstractions simply and succinctly, using a minimal toolkit of mathematical notions.
Toward a Lightweight Model of BGP Safety
TLDR
This paper presents a formal, machine-readable SPP model encoded in the Alloy lightweight modeling language, and uses the model to verify sufficient conditions on SPP instances, illustrating how the Alloy model can aid researchers in analyzing BGP.
Predicting and preventing inconsistencies in deployed distributed systems
TLDR
The design and implementation of a new approach for developing and deploying distributed systems, in which nodes predict distributed consequences of their actions and use this information to detect and avoid errors, are described, termed CrystalBall.
Understanding SIP through Model-Checking
  • P. Zave
  • Computer Science
    IPTComm
  • 2008
TLDR
The paper discusses the practical value of this model, explains some problems in SIP revealed by it, makes recommendations for solutions, and presents some directions for future work.
Reasoning about rings
TLDR
The problem of checking many useful correctness properties for rings of all sizes can be reduced to checking them on a ring of small size, and the results do not depend on the processes being finite state.
Comparison of Model Checking Tools for Information Systems
TLDR
This paper compares six model checkers (ALLOY, CADP, FDR2, NUSMV, PROB, SPIN) for the validation of information system specifications and identifies the most suitable features required to validate information systems using a model checker.
...
1
2
3
4
...