News 2016

Programming Languages & Verification

Program Analysis course at TU Kaiserslautern

November 2016
Rayna Dimitrova is teaching Program Analysis at the University of Kaiserslautern in the Winter 2016-17 semester.

The course meets Mondays 17:15-18:45 in room 48-379 on the University of Kaiserslautern campus.

More information about the course

Complexity Theory Course at TU Kaiserslautern

November 2016
Rupak Majumdar is teaching Complexity Theory at the University of Kaiserslautern in the Winter 2016-17 semester.

The course meets Mondays 15:30-17:00 at 46-280 and Wednesdays 13:45-15:15 at 46-268.

More information about the course

Three MPI-SWS papers accepted to POPL'17

October 2016
Three papers from MPI-SWS were accepted to ACM POPL 2017:
  • A promising semantics for relaxed-memory concurrency
  • Relational cost analysis
  • Thread modularity at many levels: a pearl in compositional verification

Rupak Majumdar will chair CAV 2017

October 2016
Rupak Majumdar and Viktor Kuncak (EPFL) are co-chairs of the 29th International Conference on Computer-Aided Verification (CAV 2017), to be held between July 22 and 28, 2017 in Heidelberg, Germany.

CAV 2017 is the 29th in a series dedicated to the advancement of the theory and practice of computer-aided formal analysis and synthesis methods for hardware and software systems. The CAV home page has more information.

Joel Ouaknine will chair LICS 2017

October 2016
Joel Ouaknine is the Program Chair of the Thirty-Second Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), to be held between 20 and 23 June, 2017 in Reykjavik. The LICS Symposium is an annual international forum on theoretical and practical topics in computer science that relate to logic, broadly construed.

Neel Krishnaswami joins University of Cambridge as university lecturer

July 2016
Neel Krishnaswami, a former postdoc in Derek Dreyer's group at MPI-SWS, will be joining the University of Cambridge Computer Laboratory as a University Lecturer.

Congratulations, Neel!

 

Derek Dreyer awarded ERC Consolidator Grant

April 2016
Derek Dreyer, head of the MPI-SWS Foundations of Programming group, has been awarded an ERC Consolidator Grant. Over the next five years, his project "RustBelt: Logical Foundations for the Future of Safe Systems Programming" will receive almost 2 million euros, which will allow the group to develop rigorous formal foundations for the Rust programming language.

The European Research Council (ERC) is a pan-European funding body that supports cutting-edge research. It offers funding for groundbreaking research projects of the highest scientific quality across Europe, across all research areas. Talented researchers from all over the world can receive funding for excellent research in Europe. The ERC Consolidator Grant offers funding for researchers with 7 to 12 years of experience after achieving a PhD.

The RustBelt Project

A longstanding question in the design of programming languages is how to balance safety and control. C-like languages give programmers low-level control over resource management at the expense of safety, whereas Java-like languages give programmers safe high-level abstractions at the expense of control.

Rust is a new language developed at Mozilla Research that marries together the low-level flexibility of modern C++ with a strong "ownership-based" type system guaranteeing type safety, memory safety, and data race freedom. As such, Rust has the potential to revolutionize systems programming, making it possible to build software systems that are safe by construction, without having to give up low-level control over performance.

Unfortunately, none of Rust's safety claims have been formally investigated, and it is not at all clear that they hold. To rule out data races and other common programming errors, Rust's core type system prohibits the aliasing of mutable state, but this is too restrictive for implementing some low-level data structures. Consequently, Rust's standard libraries make widespread internal use of "unsafe" blocks, which enable them to opt out of the type system when necessary. The hope is that such "unsafe" code is properly encapsulated, so that Rust's language-level safety guarantees are preserved. But due to Rust's reliance on a weak memory model of concurrency, along with its bleeding-edge type system, verifying that Rust and its libraries are actually safe will require fundamental advances to the state of the art.

In this project, we aim to equip Rust programmers with the first formal tools for verifying safe encapsulation of "unsafe" code. Any realistic languages targeting this domain in the future will encounter the same problem, so we expect our results to have lasting impact. To achieve this goal, we will build on recent breakthrough developments by the PI and collaborators in concurrent program logics and semantic models of type systems.

More

Joel Ouaknine joins the MPI-SWS faculty

March 2016
Joel Ouaknine joins the institute's faculty as a scientific director, effective Aug 1, 2016. Joel's research interests include the automated verification of real-time, probabilistic, and infinite-state systems (e.g. model-checking algorithms, synthesis problems, complexity), logic and applications to verification, decision and synthesis problems for linear dynamical systems, automated software analysis, concurrency, and theoretical computer science.

In 2015, Joel was awarded an ERC Consolidator Grant, which provides almost 2 million euros of research funding over a period of five years. He is also the recipient of the 2010 Roger Needham Award, given annually "for a distinguished research contribution in Computer Science by a UK-based researcher within ten years of his or her PhD."

Joel will join MPI-SWS from the University of Oxford, where he is a Professor of Computer Science and Fellow of St John's College. Joel holds a BSc and MSc in Mathematics from McGill University, and received his PhD in Computer Science from Oxford in 2001. He subsequently did postdoctoral work at Tulane University and Carnegie Mellon University.