Abstract
Exploiting a simple, expressive logic based on relations to describe designs and automate their analysis.
- Akhawe, D., Barth, A., Lam, P.E., Mitchell, J. and Song, D. Towards a formal foundation of Web security. In Proceedings of the 23<sup>rd</sup> IEEE Computer Security Foundations Symp. Edinburgh, 2010, 290--304. Google ScholarDigital Library
- Alexander, C. Notes on the Synthesis of Form. Harvard University Press, 1964.Google Scholar
- Alloy Tools; http://alloytools.org.Google Scholar
- Alloy Models repository; https://github.com/AlloyTools/modelsGoogle Scholar
- Alloy discussion forum; https://groups.google.com/forum/#!forum/alloytoolsGoogle Scholar
- Barth, A., Jackson, C., and Mitchell, J.C. Robust defenses for cross-site request forgery. In Proceedings of the 15<sup>th</sup> ACM Conf. on Computer and Communications Security. ACM, 2008, 75--88. Google ScholarDigital Library
- Baugh, J. and Altuntas, A. Formal methods and finite element analysis of hurricane storm surge: A case study in software verification. Science of Computer Programming 158 (2018), 100--121.Google ScholarCross Ref
- Blanchette, J. and Nipkow, T. Nitpick: A counterexample generator for higher-order logic based on a relational model finder. In Proceedings of the 1<sup>st</sup> Intern.Conf. Interactive Theorem Proving. M. Kaufmann and L.C. Paulson, eds. LNCS 6172 (2010). Springer, 131--146. Google ScholarDigital Library
- Burch, J.R., Clarke, E.M., McMillan, K.L., Dill, D.L. and Hwang, L.J. Symbolic model checking: 10 states and beyond. In Proceedings of the 5<sup>th</sup> Annual Symp. Logic in Computer Science. (Philadelphia, PA, USA, June 4--7, 1990), 428--439.Google Scholar
- Dennis, G., Chang, F. and Jackson, D. Modular verification of code with SAT. In Proceedings of the Intern. Symp. Software Testing and Analysis. (Portland, ME, July 2006). Google ScholarDigital Library
- Dennis, G., Yessenov, K. and Jackson, D. Bounded verification of voting software. In Proceedings of the 2<sup>nd</sup> IFIP Working Conf. Verified Software: Theories, Tools, and Experiments. (Toronto, Canada, Oct. 2008). Google ScholarDigital Library
- Edwards, J., Jackson, D. and Torlak, E. A type system for object models. In Proceedings of the 12<sup>th</sup> ACM SIGSOFT Intern. Symp. Foundations of Software Engineering (Newport Beach, CA, USA, Oct. 31--- Nov. 6, 2004), 189--199. Google ScholarDigital Library
- Galeotti, J.P., Rosner, N., Lopez Pombo, C.G. and Frias, M.F. TACO: Efficient SAT-based bounded verification using symmetry breaking and tight bounds. IEEE Trans. Softw. Eng. 39, 9 (Sept.2013), 1283--1307. Google ScholarDigital Library
- Holzmann, G.J. The Spin Model Checker: Primer and Reference Manual, Addison Wesley, 2003. Google ScholarDigital Library
- Huth, M. and Ryan, M. Logic in Computer Science: Modeling and Reasoning about Systems. Cambridge University Press, 2004. Google ScholarDigital Library
- Jackson, D. Software Abstractions. MIT Press, Second edition, 2012. Google ScholarDigital Library
- Jackson, D. Software Abstractions; http://softwareabstractions.org.Google Scholar
- Jackson, D., Thomas, M. and Millett, L.I. eds. Software For Dependable Systems: Sufficient Evidence? Committee on Certifiably Dependable Software Systems, Computer Science and Telecommunications Board, Division on Engineering and Physical Sciences. National Research Council of the National Academies. The National Academies Press, Washington, D.C., 2007. Google ScholarDigital Library
- Kriens, P. JPMS, The Sequel; http://aqute.biz/2017/06/14/jpms-the-sequel.htmlGoogle Scholar
- Macedo, N., Brunel, J., Chemouil, D., Cunha, A. and Kuperberg, D. Lightweight specification and analysis of dynamic systems with rich configurations. In Proceedings of the 24<sup>th</sup> ACM SIGSOFT Intern. Symp. Foundations of Software Engineering (Seattle, WA, USA, 2016), 373--383. Google ScholarDigital Library
- Macedo, N., Cunha, A. and Guimaraes, T. Exploring scenario exploration. Fundamental Approaches to Software Engineering. A. Egyed and I. Schaefer, eds. Lecture Notes in Computer Science 9033. Springer, Berlin, Heidelberg.Google Scholar
- Macedo, N., Cunha, A. and Pessoa, E. Exploiting partial knowledge for efficient model analysis. In Proceedings of the 15<sup>th</sup> Intern. Symp. Automated Technology for Verification and Analysis. Springer, 2017, 344--362.Google ScholarCross Ref
- Meng, B., Reynolds, A., Tinelli, C., and Barrett, C. Relational Constraint Solving in SMT. In Proceedings of the 26<sup>th</sup> Intern. Conf. Automated Deduction. (Gothenburg, Sweden, 2017) L. de Moura, ed. Springer.Google ScholarCross Ref
- Milicevic, A., Near, J.P., Kang E. and Jackson, D. Alloy<sup>*</sup>: A general-purpose higher-order relational constraint solver. Formal Methods in System Design, 2017, 1--32.Google Scholar
- Montaghami, V. and Rayside, D. Extending alloy with partial instances. In Proceedings of the 3<sup>rd</sup> Intern. Conf. Abstract State Machines, Alloy, B, VDM, and Z. 2012, 122--135. Google ScholarDigital Library
- Nelson, T., Barratt, C., Dougherty, D.J., Fisler, K. and Krishnamurthi, S. The Margrave tool for firewall analysis. In Proceedings of the 24<sup>th</sup> USENIX Large Installation System Administration Conference (San Jose, CA, 2010). Google ScholarDigital Library
- Nelson, T., Danas, N., Dougherty, D.J., and Krishnamurthi, S. The Power of Why and Why Not: Enriching Scenario Exploration with Provenance. Joint European Software Engineering Conference and ACM SIGSOFT Symposium on the Foundations of Software Engineering, 2017. Google ScholarDigital Library
- Nelson, T., Saghafi, S., Dougherty, D.J., Fisler, K., and Krishnamurthi, S. Aluminum: Principled scenario exploration through minimality. In Proceedings of the Intern. Conf. Software Engineering, 2013. Google ScholarDigital Library
- Padon, O., Losa, G., Sagiv, M. and Shoham S. Paxos made EPR: Decidable reasoning about distributed protocols. In Proceedings of the OOPSLA 2017 (Vancouver, 2017). Google ScholarDigital Library
- Pernsteiner, S. et al. Investigating safety of a radiotherapy machine using system models with pluggable checkers. Computer Aided Verification LNCS 9780. Springer.Google Scholar
- Regis, G. et al. DynAlloy Analyzer: A tool for the specification and analysis of Alloy models with dynamic behaviour. In Proceedings of the 11<sup>th</sup> Joint Meeting on Foundations of Software Engineering. ACM, New York, NY, 2017, 969--973. Google ScholarDigital Library
- Spivey, J.M. The Z Notation: A Reference Manual (2<sup>nd</sup> ed.), Prentice Hall, 1992. Google ScholarDigital Library
- Stoica, I. et al. Chord: A scalable peer-to-peer lookup protocol for Internet applications. IEEE/ACM Trans. Networking 11, 1 (2003), 17--32. Google ScholarDigital Library
- Torlak, E. and Jackson, D. Kodkod: A relational model finder. In Proceedings of the 13<sup>th</sup> Intern. Conf. Tools and Algorithms for the Construction and Analysis of Systems (Braga, Portugal, 2007), 632--647. Google ScholarDigital Library
- Trippel, C., Lustig, D. and Martonosi, M. MeltdownPrime and SpectrePrime: Automatically Synthesized Attacks Exploiting Invalidation-Based Coherence Protocols. Feb. 2018; arX- iv:1802.03802.Google Scholar
- University of Washington. PLSE Neutrons; http:neutrons.uwplse.org/Google Scholar
- Visser, W., Havelund, K., Brat, G., Park, S.J. and Lerda, F. Model checking programs. Automated Software Engineering J. 10, 2 (Apr. 2003). Google ScholarDigital Library
- Wallace, C. Learning Discrete Structures Interactively with Alloy. In Proceedings of the 49<sup>th</sup> ACM Tech. Symp. Computer Science Education (Baltimore, MD, Feb. 21--24, 2018), 1051--1051. Google ScholarDigital Library
- Warmer, J.B. and Kleppe, A.G. The Object Constraint Language: Precise Modeling with UML. Addison-Wesley, 1999. Google ScholarDigital Library
- Wayne, H. Personal blog; https://www.hillel-wayne.comGoogle Scholar
- Wickerson, J, Batty, M., Sorensen, T. and Constantinides, G.A. Automatically comparing memory consistency models. In Proceedings of the 44<sup>th</sup> ACM SIGPLAN Symp. Principles of Programming Languages (Paris, France, 2017), 190--204. Google ScholarDigital Library
- Zave, P. A practical comparison of Alloy and Spin. Formal Aspects of Computing 27 (2015), 239--253. Google ScholarCross Ref
- Zave, P. Reasoning about identifier spaces: How to make Chord correct. IEEE Trans. Software Engineering 43, 12 (Dec. 2017), 1144--1156. Google ScholarDigital Library
Index Terms
- Alloy: a language and tool for exploring software designs
Recommendations
Alloy: a lightweight object modelling notation
Alloy is a little language for describing structural properties. It offers a declaration syntax compatible with graphical object models, and a set-based formula syntax powerful enough to express complex constraints and yet amenable to a fully automatic ...
F-Alloy: a relational model transformation language based on Alloy
Model transformations are one of the core artifacts of a model-driven engineering approach. The relational logic language Alloy has been used in the past to verify properties of model transformations. In this paper we introduce the concept of functional ...
Translating z to alloy
ABZ'10: Proceedings of the Second international conference on Abstract State Machines, Alloy, B and ZFew tools are available to help with the difficult task of validating that a Z specification captures its intended meaning. One tool that has been proven to be useful for validating specifications is the Alloy Analyzer, an interactive tool for checking ...
Comments