dc.contributor.author |
Soueidi, Chukri Albert |
dc.date.accessioned |
2020-03-28T16:09:55Z |
dc.date.available |
2022-05 |
dc.date.available |
2020-03-28T16:09:55Z |
dc.date.issued |
2019 |
dc.date.submitted |
2019 |
dc.identifier.other |
b23635903 |
dc.identifier.uri |
http://hdl.handle.net/10938/21795 |
dc.description |
Thesis. M.S. American University of Beirut. Department of Computer Science, 2019. T:7054. |
dc.description |
Advisor : Dr. Paul Attie, Professor, Computer Science ; Members of Committee : Dr. Mohamad Jaber, Assistant Professor, Computer Science ; Dr. Fadi Zaraket, Associate Professor, Electrical and Computer Engineering. |
dc.description |
Includes bibliographical references (leaves 51-52) |
dc.description.abstract |
We address the problem of modeling, analyzing, and repairing finite-state and infinite-state concurrent programs. We define a textual notation for concurrent programs and implement it in the Eshmun tool. For finite-state programs, we automatically generate Kripke structures (transition diagrams) from the program text. This structure can then be model checked and repaired using Eshmun facilities. The resulting repair can then be used to guide the designer in fixing the program itself. For infinite-state programs, we define the notion of a finitely-representable infinite-state Kripke structure, and we provide a semi-automatic method for generating such a structure from an infinite-state concurrent program. This structure models the behavior of the infinite state concurrent program. We label the states of the Kripke structure with state predicates, and the transitions with preconditions P and postconditions Q. Each transition τ then generates a Hoare triple [P] τ [Q] which we verify using the Z3 SMT solver. Hoare triples that are not valid must be repaired. When all triples are valid, we model check to determine if the required properties hold. If the model check fails, more repair is needed. If the model check succeeds, we can semi-automatically extract a correct infinite state concurrent program. |
dc.format.extent |
1 online resource (xi, 52 leaves) : illustrations |
dc.language.iso |
eng |
dc.subject.classification |
T:007054 |
dc.subject.lcsh |
Software engineering. |
dc.subject.lcsh |
Modeling. |
dc.subject.lcsh |
Operating systems (Computers) |
dc.subject.lcsh |
Distributed operating systems (Computers) |
dc.title |
Behavioural modeling and abstraction of concurrent programs. |
dc.type |
Thesis |
dc.contributor.department |
Department of Computer Science |
dc.contributor.faculty |
Faculty of Arts and Sciences |
dc.contributor.institution |
American University of Beirut |