Skip to content

Symbolic Debugging with Gillian

Published at DEBT in ECOOP 2023
DOI: 10.1145/3605155.3605861

Authors

  • Nat Karmios
  • Sacha-Élie Ayoun
  • Philippa Gardner

Abstract

Software debugging for concrete execution enjoys a mature suite of tools, but debugging symbolic execution is still in its infancy. It carries unique challenges, as a single state can lead to multiple branches representing different sets of conditions, and symbolic states must be 'matched' against logical conditions. Some of today’s otherwise mature symbolic-execution tools still rely on plain-text log files for debugging, which provide no good overview of the execution process and can quickly become overwhelming. We introduce a debugger for Gillian’s verification mode—complete with a custom interface—and ponder the potential for this interface and the protocol behind it to be used outside of Gillian.