Greedy pebbling for proof space compression

Andreas Fellner*, Bruno Woltzenlogel Paleo

*Corresponding author for this work

    Research output: Contribution to journalArticlepeer-review

    1 Citation (Scopus)

    Abstract

    Automated reasoning tools for the verification and synthesis of software often produce proofs to allow independent certification of the correctness of the produced solutions. As proofs can be large, this paper considers the problem of compressing proofs with respect to their space, which is approximately proportional to the memory necessary to check them. Proof checking with a small amount of available memory is analogous to playing a pebbling game with a small number of pebbles. This paper exploits this analogy and describes novel algorithms for playing a pebbling game. The sequence of moves executed in the pebbling game then corresponds to an improved topological ordering of the nodes of the proof, leading to smaller memory consumption when the proof is checked. Because the number of possible pebbling strategies and topological orderings is too large, brute-force approaches to find optimal solutions are impractical, and hence, the new pebbling algorithms proposed here are based on heuristics for finding good, though not necessarily optimal, solutions. The algorithms are evaluated on the task of compressing the space of thousands of propositional resolution proofs generated by SAT- and SMT-solvers.

    Original languageEnglish
    Pages (from-to)71-86
    Number of pages16
    JournalInternational Journal on Software Tools for Technology Transfer
    Volume21
    Issue number1
    DOIs
    Publication statusPublished - 6 Feb 2019

    Fingerprint

    Dive into the research topics of 'Greedy pebbling for proof space compression'. Together they form a unique fingerprint.

    Cite this