COMPUTER SCIENCE 2
- Diploma / Master Thesis -
Local Reasoning with Separation Logic
on Probabilistic Concurrent Programs
What is it all about?
Automatic verification of concurrent systems has to face a combinatorial explosion problem due to the intrinsic
complexity of the interleaving semantics of parallelism, and more generally of interferences between system units.
This problem need to be solved efficiently so as to make automatic techniques scale to large code. Local reasoning
consists in avoiding as much as possible to consider interferences between threads, objects, or callers and callees, and
to consider each system unit as mostly independent from its context. The most famous advocate of local reasoning
is Separation Logic. This approach proved to be very efficient on heap-manipulating programs, checking large case