Transformations of Logic Programs on Infinite Lists
Alberto Pettorossi, Maurizio Proietti, and Valerio Senni

TL;DR
This paper extends logic programming to infinite lists with -programs, providing transformation rules and a methodology for verifying properties of reactive systems and infinite sequences.
Contribution
It introduces -programs for infinite lists, along with correct transformation rules and a verification methodology for properties of reactive systems.
Findings
Transformation rules preserve perfect model semantics
Methodology effectively verifies properties of Buechi automata
Applicable to properties of -regular languages
Abstract
We consider an extension of logic programs, called \omega-programs, that can be used to define predicates over infinite lists. \omega-programs allow us to specify properties of the infinite behavior of reactive systems and, in general, properties of infinite sequences of events. The semantics of \omega-programs is an extension of the perfect model semantics. We present variants of the familiar unfold/fold rules which can be used for transforming \omega-programs. We show that these new rules are correct, that is, their application preserves the perfect model semantics. Then we outline a general methodology based on program transformation for verifying properties of \omega-programs. We demonstrate the power of our transformation-based verification methodology by proving some properties of Buechi automata and \omega-regular languages.
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.
