Download PDFOpen PDF in browserCartesian Reachability Logic: A Language-parametric Logic for Verifying k-Safety Properties52 pages•Published: June 3, 2023AbstractWe introduce a language-parametric calculus for k-safety verification - Cartesian Reach- ability logic (CRL).In recent years, formal verification of hyperproperties has become an important topic in the formal methods community. An interesting class of hyperproperties is known as k-safety properties, which express the absence of a bad k-tuple of execution traces. Many security policies, such as noninterference, and functional properties, such as commutativity, monotonicity, and transitivity, are k-safety properties. A prominent example of a logic that can reason about k-safety properties of software systems is Cartesian Hoare logic (CHL). However, CHL targets a specific, small imperative language. In order to use it for sound verification of programs in a different language, one needs to extend it with the desired features or hand-craft a translation. Both these approaches require a lot of tedious, error- prone work. Unlike CHL, CRL is language-parametric: it can be instantiated with an operational semantics (of a certain kind) of any deterministic language. Its soundness theorem is proved once and for all, with no need to adapt or re-prove it for different languages or their variants. This approach can significantly reduce the development costs of tools and techniques for sound k-safety verification of programs in deterministic languages: for exam- ple, of smart contracts written for EVM (the language powering the Ethereum blockchain), which already has an operational semantics serving as a reference. Keyphrases: hyperproperties, k safety, language parametric, logic In: Ruzica Piskac and Andrei Voronkov (editors). Proceedings of 24th International Conference on Logic for Programming, Artificial Intelligence and Reasoning, vol 94, pages 405-456.
|