https://github.com/romac/msc-thesis-report
MSc Thesis: Systems Modelling with Stainless
https://github.com/romac/msc-thesis-report
Last synced: 5 months ago
JSON representation
MSc Thesis: Systems Modelling with Stainless
- Host: GitHub
- URL: https://github.com/romac/msc-thesis-report
- Owner: romac
- Created: 2017-12-25T13:00:59.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-06-24T19:29:30.000Z (about 7 years ago)
- Last Synced: 2025-09-14T16:46:07.279Z (10 months ago)
- Language: TeX
- Homepage:
- Size: 6.48 MB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Systems Modeling With Stainless
> January 2018
## Abstract
We present three orthogonal approaches to the verification of non-trivial programs, and systems of medium complexity, such as evaluators for domain specific languages, small actor systems, and implementations of bi-party communication protocols. We first discuss the design, implementation and semantics of a partial symbolic evaluation procedure for PureScala programs, as well as the challenges we faced to ensure termination of said procedure. Next, we define a model for actor systems which we implement as a library for Stainless, and explain how to verify that a global invariant of an actor system is preserved between each step of execution, with supporting examples. At last, we show how the addition of linear types to the type system of Stainless allows us to safely model bi-party communication protocols expressed as session types in PureScala, with a supporting example.
## Report
[The report is available in PDF](report/report.pdf)
## Presentation
[The slides from the presentation are available in PDF](presentation/slides.pdf)