Info: Zenodo’s user support line is staffed on regular business days between Dec 23 and Jan 5. Response times may be slightly longer than normal.

Published July 31, 2023 | Version 1
Software Open

Automated Property Directed Self-Composition, ATVA 2023

Description

PdscSynth is a tool designed on top of PDSC (https://bitbucket.org/sharonsh/pdsc/src/master/), corresponding to the work presented in our ATVA 2023 submission (paper ID 51).

We consider the problem of hypersafety verification, i.e. of verifying k-safety properties of a program. While this can, in principle, be addressed by self composition, which reduces the k-safety verification task into a standard safety verification exercise, verifying self-composed programs is not easy. The proofs often require that the functionality of every component program be captured fully, making invariant inference a challenge. Recently, a technique for property directed self composition (or, PDSC) was  proposed to tackle this problem. PDSC tries to come up with a semantic self-composition function, together with the inductive invariant that is needed to verify the safety of the self-composed program. One of its crucial limitations, however, is that it relies on users to supply a set of predicates in which the composition and the invariant may be expressed. It is quite challenging even for a user to supply such a set of predicates -- the set needs to be sufficiently expressive, so that the invariant can be expressed using those predicates (and their boolean combinations), but not overly expressive to increase the search-space unnecessarily. This paper proposes a technique to automate PDSC fully, by discovering new predicates whenever the given set is found to be insufficient. 

Files

PdscSynth.zip

Files (87.5 MB)

Name Size Download all
md5:bb4eedaf1f22d18d92f5250a24000244
87.5 MB Preview Download