Techniques based on formal logic, such as model checking, satisfiability, static analysis, and automated theorem proving, are finding a broad range of applications in modeling, analysis, verification, and synthesis. This school, the fourteenth in the series, will focus on the principles and practice of formal techniques, with a strong emphasis on the hands-on use and development of this technology. It primarily targets graduate students and young researchers who are interested in studying and using formal techniques in their research. A prior background in formal methods is helpful but not required. Participants at the school can expect to have a seriously fun time experimenting with the tools and techniques presented in the lectures during laboratory sessions. The main lectures will run from Monday May 26 to Friday May 30. They will be preceded by a background course "Speaking Logic" taught by Natarajan Shankar and Stéphane Graham-Lengrand (SRI CSL) on May 24/25.
The lecturers at the school include:
Although this all sounds like a no-go for (semi-)automated analysis, I will present a deductive verification technique to analyse probabilistic programs. In contrast to simulation (like MCMC), this analysis yields exact results. Our technique is based on weakest precondition reasoning. We will explain the foundations of this approach, present some proof rules to reason about probabilistic while-loops, and discuss how the analysis can be automated---either fully or with the help of invariants.
Hands-on experiments will be carried out using the deductive verifier Caesar, see "https://www.caesarverifier.org.
His book Principles of Model Checking (with Christel Baier) is a bestseller in formal verification. He received numerous best paper awards and other honors, most recently the JCL Award 2023 in Dependable Computing. He is a member of the Academia Europaea, the Royal Holland Society of Sciences and Humanities (KHMW) and the German Academy of Sciences (2024). He received an honorary doctorate from Aalborg University (2017) and is an ACM Fellow (2020).
For propositional logic formulas, which are Boolean combinations of Boolean variables, we could enumerate and check all possible variable assignments. However, due to its bad average complexity, this exploration approach is not applicable in practice. Alternatively, the proof system of Boolean resolution can be applied, but the applicability of this method is also restricted to rather small problems. In the 90s, an elegant combination of these two methods has been suggested, where the proof construction is guided by an exploration of the assignment space equipped with a smart look-ahead mechanism. This idea allowed to develop impressively powerful SAT solvers, which are able to effectively solve huge problems at industrial scale.
The effectivity of SAT solvers gave motivation to extend to scope of solver technologies to formulas of quantifier-free first-order logic over different theories. On the one hand, eager SMT solving approaches have been proposed for certain theories to transform their formulas to propositional logic and use SAT solving to check the result for satisfiability. On the other hand, (full/less) lazy SMT solving uses SAT solving to explore the Boolean structure of the formula, and employs theory solvers to check the consistency of Boolean assignments in the theory domains. SMT solvers can be used as general-purpose off-the-shelf tools. Due to their impressive efficiency, they are nowadays frequently used in a wide variety of applications. A typical application encodes real-world problems as logical formulas, whose solutions can be decoded to solutions of the real-world problem.
Recently, the idea of symbiotic combination of exploration and proof construction has been also generalized to theories, most notably quantifier-free real algebra, in the framework of the model constructing satisfiability calculus (MCSAT). In this approach, exploration-guided proof construction is designed to run both in the Boolean space and in the theory domain, simultaneously in a consistent manner.In this unit we give an introduction to the above mechanisms of SAT and SMT solving, discuss some interesting ideas behind recent developments, and illustrate the usage of SMT solvers on some application examples.
Today R2U2 is the only space-flight-certified runtime verification engine, and it has launched into space on several missions, including NASA's Lunar Gateway, Robonaut2 on the International Space Station, and a JAXA satellite. Lectures will feature the algorithms and architecture of the tool, while highlighting successful applications. There are multiple implementations of R2U2, and it is highly configurable to the specific needs of the mission under analysis; we will survey the options for specialization and analysis. Labs will offer an opportunity to configure and run R2U2 on realistic case studies, utilizing the human-facing C2PO interface.
Resources: R2U2 is open-source software, available for download from its website (https://r2u2.temporallogic.org/). There are several support tools for better specification elicitation, validation, and debugging of R2U2's primary specification logic Mission-time Linear Temporal Logic (MLTL); we will use the WEST GUI (link TBD).Her advances in computation for the aerospace domain earned her many awards including: the NSF CAREER Award; the NASA Early Career Faculty Award; American Helicopter Society's Howard Hughes Award; Women in Aerospace Inaugural Initiative-Inspiration-Impact Award; two NASA Group Achievement Awards; two NASA Superior Accomplishment Awards; Lockheed Martin Space Operations Lightning Award; AIAA's Intelligent Systems Distinguished Service Award; Building a World of Difference faculty fellowship. She holds an endowed position as Dennis and Rebecca Muilenburg Professor, is an Associate Fellow of AIAA, and is a Senior Member of IEEE, ACM, and SWE. Dr. Rozier has served on the NASA Formal Methods Symposium Steering Committee since working to found that conference in 2008.
A key insight is that, to obtain compositionality, the analysis should work with function specifications that are local, in that they should describe the function behaviour only on the partial states or resources that the function accesses or manipulates, and a mechanism for using such specifications when the function is called by code working on a larger state. This insight was first introduced in separation logic (SL, [1]), a modern over-approximating (OX) program logic for compositional verification of correctness properties, which features local function specifications that can be called on larger state with the help of the frame rule. Recently, these ideas have been adapted to under-approximate (UX) reasoning in the context of incorrectness separation logic (ISL, [3,2]) for compositional true bug-finding.
Ideas from SL and ISL have led to the development of efficient compositional symbolic execution tools and platforms in academia and industry, such as VeriFast, Viper and CN for semi-automatic OX verification based on SL, Meta’s Infer-Pulse for automatic UX true bug-finding based on ISL, and Gillian for both. Gillian [5,6,7,8] is unique in that it is parametric on the memory model of the language and its compositional symbolic execution engine is underpinned by strong mathematical foundations [4]. It has been instantiated to the C, JavaScript and Rust languages, and applied to industrial code.
Course Outline: This course will provide a whirl-wind tour of separation logic, compositional symbolic execution and Gillian. It is adapted from my MSc course on “Scalable Verified Software: Separation Logic” that I have been teaching at Imperial for many years.The lectures will comprise:
The labs will concentrate on compositional OX verification based on SL, and will give you hands-on experience of using Gillian. For the last three years, we have had experience holding a lab on Gillian as part of my MSc course, made possible due to the addition of a symbolic debugger for Gillian. The labs will comprise:
After completing her PhD thesis at Edinburgh in 1992 and holding research positions in both Edinburgh and Cambridge, Gardner became a lecturer at Imperial in 2001 and a professor in 2009. She held fellowships spanning over twenty years, including a UKRI Established Research Fellowship from 2018 to 2023 at Imperial, and was elected a Fellow of the Royal Academy of Engineering in 2020. She won the British Computer Society Lovelace Medal in 2024, and was the founding director of the UK Research Institute of Verified Trustworthy Software Systems, funded by GCHQ and now directed by Azalea Raad and Brijesh Dongol.
Speaking Logic - Videos:
Speaking Logic Part 1 (2021),
Propositional Logic
PVS Tutorial,
Type Theory,
VSCode-PVS Tutorial -
VSCode-PVS Video
Information about previous Summer Schools on Formal Techniques can be found at
Jay Bosamiya of CMU has blogged about the 2018 Summer School at https://www.jaybosamiya.com/blog/2018/05/31/ssft/
This year, the school/bootcamp will take place in a hybrid mode: the lectures and labs will be live-streamed and recorded. We strongly encourage in-person participation so that you can benefit from interactions outside the classroom. We have funding from NSF to cover transportation/food/lodging expenses for selected US-based students. Non-student and non-US in-person participants are expected to cover their own transportation and will be charged a fee (around $150/day) to cover the cost of food and lodging.
The 2025 Summer School on Formal Techniques will be presented in a hybrid format. We encourage those students who can attend in person to do so. Those who cannot be there in person can still participate virtually but they will need to synchronize with the Pacific Daylight Savings Time. Applications should be submitted together with names of two references (preferably advisors, professors, or senior colleagues).
Applicants are urged to submit their applications before March 31, 2025, since there are only a limited number of spaces available. Those needing invitation letters for visa purposes are encouraged to complete their applications as early as possible. We strongly encourage the participation of women and under-represented minorities in the summer school.
The nearest airport to the summer school is SFO. Use Supershuttle for ground transportation to/from SFO - we should have a discount code shortly.