~/talk

Proving False in Object Oriented Verification Programs by Exploiting Non-Termination

Talkat Unsound 2022 · on Tuesday, 2022-12-06· [software-architecture]
links:none on file
slides:none on file

Three small programs show Gobra, KeY, and Dafny producing proofs of false by hiding non-terminating proofs in ghost variables and then compiling only the terminating remainder. Gobra’s partial-verification accepts a self-recursive postcondition, KeY verifies contracts in isolation letting two methods prove each other via mutual recursion, and Dafny’s lambdas allow an Omega combinator style recursion because lambdas lack decreases clauses. Each exploit yields a terminating caller that violates its declared postcondition despite being proved.

AI-written summary · about

  1. 0:00Introduction
  2. 1:04Breaking OO verifiers with non-termination
  3. 3:58First example in GoPro verifier
  4. 9:44Ghost code and partial verification fail
  5. 10:07Second example in Key verifier for Java
  6. 13:38Third example in Daphne verifier
  7. 19:22Summary
  8. 19:45Audience questions and discussion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.