Mechanical Verification Projects
The following projects have been performed with the proof assistant
PVS.
More specifically, several projects about mutual exclusion in shared memory:
-
Verification of hardware locks (2021)
- FCFS:
first-come first-served (2020)
- A
software implementation of trylock, with applications in the Rectangle
algorithm and Access Selection (2020). With Peter A. Buhr and
Dave Dice.
-
Elevator algorithms for high-contention mutual exclusion (2017),
with Peter A. Buhr and Dave Dice.
-
Fast mutual exclusion by the Triangle Algorithm (2014), together
with Peter A. Buhr and Dave Dice.
-
Tournaments for Mutual Exclusion (2016).
-
Mutual exclusion by Lycklama-Hadzilacos, and Aravind (2013).
-
Starvation-free mutual exclusion with semaphores (2011).
-
Bakery Algorithms. This contains Lamport's Bakery Algorithm,
verified in 2010, primarily to illustrate the technique. In 2015, it
was supplemented with Taubenfeld's Black-White Bakery Algorithm. In
2016, I added work done with Alex Aravind on a Bakery algorithm with
wrap-around tickets, with an extension to group mutual exclusion. In
2020, a variation of Taubenfeld's Black-White Bakery algorithm was
developed, with a more natural encoding and simpler await
conditions.
-
Bounded nonatomic mutual exclusion together with A.A. Aravind (2009).
-
Queue based mutual exclusion together with A.A. Aravind (2007).
-
Group mutual exclusion together with A.A. Aravind (2015).
Older work:
The following projects have been done with the theorem prover
NQTHM of Boyer and Moore.
My former PhD student Gao Hui defended
his thesis "Design and Verification of Lock-free Parallel Algorithms"
successfully in Groningen on 15 April 2005.
Short introduction to theorem proving with PVS
Comments and questions are welcome.
Back to my home page.
Last modified: Tue Apr 16 20:49:55 CEST 2024