Hide metadata

dc.contributor.authorLunde, Sondre Skaflem
dc.date.accessioned2021-09-07T22:33:35Z
dc.date.available2021-09-07T22:33:35Z
dc.date.issued2021
dc.identifier.citationLunde, Sondre Skaflem. Commutativity Analysis in ABS. Master thesis, University of Oslo, 2021
dc.identifier.urihttp://hdl.handle.net/10852/87787
dc.description.abstractWhen analysing programs statically, one quickly runs into issues of too many states and too many transitions, which combine to make the state-space very large. Commutativity analysis is one strategy for reducing the state-space, by identifying pairs of transitions that result in the same state regardless of execution order. This thesis presents an investigation into the suitability of SMT solvers for determining the commutativity of methods in an active object language. ABS, as an active object language, has cooperative scheduling and strong encapsulation, which makes it possible to work with methods as atomic units. Analysis of these methods should be able to identify commuting methods and reduce the state space. Satisfiability Modulo Theories (SMT) solvers allow programmers to declare problems rather than constructing solutions themselves. Modern solvers are highly optimized for speed, and able to solve very complex problems. This makes their use very compelling as part of larger analyses. A new addition to the ABS compiler has been written to output a type checked syntax tree as JSON. A program has been developed in Haskell to take JSON from the ABS compiler and generate code for an SMT solver, and these all combine to determine whether methods within a class commute. We demonstrate how to leverage an SMT solver to find commuting methods in ABS, and conclude it to be a promising tool for this kind of analysis.eng
dc.language.isoeng
dc.subjectCommutativity
dc.subjectABS
dc.subjectZ3
dc.subjectHaskell
dc.subjectSMT
dc.subjectLogic
dc.subjectStatic Analysis
dc.titleCommutativity Analysis in ABSeng
dc.typeMaster thesis
dc.date.updated2021-09-07T22:33:35Z
dc.creator.authorLunde, Sondre Skaflem
dc.identifier.urnURN:NBN:no-90330
dc.type.documentMasteroppgave
dc.identifier.fulltextFulltext https://www.duo.uio.no/bitstream/handle/10852/87787/1/final.pdf


Files in this item

Appears in the following Collection

Hide metadata