A denotational semantics for PROMELA addressing arbitrary jumps
Marco Comini (1), Mar\'ia del Mar Gallardo (2), Alicia Villanueva (3), ((1) Universit\`a degli Studi di Udine (Italy), (2) Universidad de M\'alaga,, Andaluc\'ia Tech, ITI-Software, (3) VRAIN - Universitat Polit\`ecnica de, Val\`encia)

TL;DR
This paper introduces a formal denotational semantics for PROMELA, capturing its complex features like arbitrary jumps and process interactions, to facilitate formal analysis and verification of distributed system models.
Contribution
It presents the first bottom-up, fixpoint semantics for PROMELA, enabling future abstract interpretation and formal verification techniques.
Findings
Provides a formal semantics capturing PROMELA's features
Lays groundwork for analysis and verification methods
First semantics to handle arbitrary jumps in PROMELA
Abstract
PROMELA (Process Meta Language) is a high-level specification language designed for modeling interactions in distributed systems. PROMELA is used as the input language for the model checker SPIN (Simple Promela INterpreter). The main characteristics of PROMELA are non-determinism, process communication through synchronous as well as asynchronous channels, and the possibility to dynamically create instances of processes. In this paper, we introduce a bottom-up, fixpoint semantics that aims to model the behavior of PROMELA programs. This work is the first step towards a more ambitious goal where analysis and verification techniques based on abstract interpretation would be defined on top of such semantics.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsFormal Methods in Verification · Logic, programming, and type systems · Petri Nets in System Modeling
