Date & Time:
February 2, 2024 12:00 pm – 1:30 pm
02/02/2024 12:00 PM 02/02/2024 01:30 PM America/Chicago William Mansky (UIC)- Foundational C Verification with VST and Iris

Abstract: The strongest way to guarantee a program’s correctness is to verify it with a program logic implemented in an interactive theorem prover. Two systems for this kind of verification are the Verified Software Toolchain (VST), which connects to the CompCert verified C compiler to provide guarantees down to assembly, and Iris, a language-independent separation logic framework that has been the focus of a huge amount of recent research across many application domains and language features. In this talk, I aim to give a taste of the theory and practice of these foundational program verification tools. I will review the basic principles of separation logic, describe how Iris implements them via a flexible notion of “resource algebra” and an elegant proof mode, and walk through my recent work rebuilding VST on top of Iris, from the basic concept of memory ownership to the user-level tactics.

Speakers

William Mansky

Assistant Professor of Computer Science, UIC

I’m interested in the semantics, analysis, and correctness of programs, especially concurrent programs. I’ve done work in compiler and program verification, programming language semantics for low-level languages, and formalizing memory models (both sequential and concurrent). My main tools are the interactive theorem provers Coq and Isabelle.

I am working on building tools and techniques for proving the correctness of concurrent C programs, using the Verified Software Toolchain(code here). I aim to prove correctness of realistic concurrent systems code, including web server and database implementations, and to develop simple approaches to reasoning about fine-grained concurrency. I’ve written an introduction to verifying concurrent programs in VST, available here.

More generally, I’m interested in bridging the gap between programming and program verification, providing better tools for programmers to understand the effects of code as they write it, and making it easier to verify code as it’s written. I’d like to make it possible for every C programmer to write proved-correct code.

Related News & Events

Headshot
UChicago CS News

Nick Feamster Receives 2026 Quantrell Teaching Award

May 14, 2026
headshot
UChicago CS News

From Dark Patterns Research to Landmark Litigation: UChicago CS PhD Graduate Brennan Schaffner Receives ACM SIGCHI Special Recognition Award

May 13, 2026
quicksilver detecting tool
UChicago CS News

Unmasking AI Music: Quicksilver and the Ethical Movement Behind It

May 11, 2026
headshot
UChicago CS News

Rebecca Willett Named 2026 Recipient of the Arthur L. Kelly Faculty Prize

May 11, 2026
headshot
UChicago CS News

Assistant Professor Yuxin Chen Receives Prestigious NSF CAREER Award

May 05, 2026
chart
UChicago CS News

Who Gets Hired, Paid, and Liked? Who Gets Credit? New Research Examines AI’s Role in Writing and the Workplace

Apr 22, 2026
Jiayin presenting her work at CHI
UChicago CS News

The Time Constraints of AI Access Could Change How We Think

Apr 21, 2026
headshots
UChicago CS News

University of Chicago Wins Distinguished Laude Institute Moonshots Seed Grant

Apr 15, 2026
collage
UChicago CS News

Incredible Showing of UChicago CS Researchers to CHI 2026

Apr 10, 2026
ai cartoon
UChicago CS News

What If AI Scientists Could Talk to Each Other?

Apr 06, 2026
person using embodied AI to open a window
UChicago CS News

When AI Meets Muscle: Context-Aware Electrical Stimulation Promises a New Way to Guide Human Movements

Apr 03, 2026
graphic
UChicago CS News

UChicago Researchers Build a Tool to Help Fix Peer Review

Apr 02, 2026
arrow-down-largearrow-left-largearrow-right-large-greyarrow-right-large-yellowarrow-right-largearrow-right-smallbutton-arrowclosedocumentfacebookfacet-arrow-down-whitefacet-arrow-downPage 1CheckedCheckedicon-apple-t5backgroundLayer 1icon-google-t5icon-office365-t5icon-outlook-t5backgroundLayer 1icon-outlookcom-t5backgroundLayer 1icon-yahoo-t5backgroundLayer 1internal-yellowinternalintranetlinkedinlinkoutpauseplaypresentationsearch-bluesearchshareslider-arrow-nextslider-arrow-prevtwittervideoyoutube