A multi-paradigm language for reactive synthesis

This paper proposes a language for describing reactive synthesis problems that integrates imperative and declarative elements. The semantics is defined in terms of two-player turn-based infinite games with full information. Currently, synthesis tools accept linear temporal logic (LTL) as input, but...

Full description

Bibliographic Details
Main Authors: Ioannis Filippidis, Richard M. Murray, Gerard J. Holzmann
Format: Article
Language:English
Published: Open Publishing Association 2016-02-01
Series:Electronic Proceedings in Theoretical Computer Science
Online Access:http://arxiv.org/pdf/1602.01173v1
id doaj-20acee8c9f1a4b5cb3701b0e91f17540
record_format Article
spelling doaj-20acee8c9f1a4b5cb3701b0e91f175402020-11-24T22:29:13ZengOpen Publishing AssociationElectronic Proceedings in Theoretical Computer Science2075-21802016-02-01202Proc. SYNT 2015739710.4204/EPTCS.202.6:2bA multi-paradigm language for reactive synthesisIoannis FilippidisRichard M. MurrayGerard J. HolzmannThis paper proposes a language for describing reactive synthesis problems that integrates imperative and declarative elements. The semantics is defined in terms of two-player turn-based infinite games with full information. Currently, synthesis tools accept linear temporal logic (LTL) as input, but this description is less structured and does not facilitate the expression of sequential constraints. This motivates the use of a structured programming language to specify synthesis problems. Transition systems and guarded commands serve as imperative constructs, expressed in a syntax based on that of the modeling language Promela. The syntax allows defining which player controls data and control flow, and separating a program into assumptions and guarantees. These notions are necessary for input to game solvers. The integration of imperative and declarative paradigms allows using the paradigm that is most appropriate for expressing each requirement. The declarative part is expressed in the LTL fragment of generalized reactivity(1), which admits efficient synthesis algorithms, extended with past LTL. The implementation translates Promela to input for the Slugs synthesizer and is written in Python. The AMBA AHB bus case study is revisited and synthesized efficiently, identifying the need to reorder binary decision diagrams during strategy construction, in order to prevent the exponential blowup observed in previous work.http://arxiv.org/pdf/1602.01173v1
collection DOAJ
language English
format Article
sources DOAJ
author Ioannis Filippidis
Richard M. Murray
Gerard J. Holzmann
spellingShingle Ioannis Filippidis
Richard M. Murray
Gerard J. Holzmann
A multi-paradigm language for reactive synthesis
Electronic Proceedings in Theoretical Computer Science
author_facet Ioannis Filippidis
Richard M. Murray
Gerard J. Holzmann
author_sort Ioannis Filippidis
title A multi-paradigm language for reactive synthesis
title_short A multi-paradigm language for reactive synthesis
title_full A multi-paradigm language for reactive synthesis
title_fullStr A multi-paradigm language for reactive synthesis
title_full_unstemmed A multi-paradigm language for reactive synthesis
title_sort multi-paradigm language for reactive synthesis
publisher Open Publishing Association
series Electronic Proceedings in Theoretical Computer Science
issn 2075-2180
publishDate 2016-02-01
description This paper proposes a language for describing reactive synthesis problems that integrates imperative and declarative elements. The semantics is defined in terms of two-player turn-based infinite games with full information. Currently, synthesis tools accept linear temporal logic (LTL) as input, but this description is less structured and does not facilitate the expression of sequential constraints. This motivates the use of a structured programming language to specify synthesis problems. Transition systems and guarded commands serve as imperative constructs, expressed in a syntax based on that of the modeling language Promela. The syntax allows defining which player controls data and control flow, and separating a program into assumptions and guarantees. These notions are necessary for input to game solvers. The integration of imperative and declarative paradigms allows using the paradigm that is most appropriate for expressing each requirement. The declarative part is expressed in the LTL fragment of generalized reactivity(1), which admits efficient synthesis algorithms, extended with past LTL. The implementation translates Promela to input for the Slugs synthesizer and is written in Python. The AMBA AHB bus case study is revisited and synthesized efficiently, identifying the need to reorder binary decision diagrams during strategy construction, in order to prevent the exponential blowup observed in previous work.
url http://arxiv.org/pdf/1602.01173v1
work_keys_str_mv AT ioannisfilippidis amultiparadigmlanguageforreactivesynthesis
AT richardmmurray amultiparadigmlanguageforreactivesynthesis
AT gerardjholzmann amultiparadigmlanguageforreactivesynthesis
AT ioannisfilippidis multiparadigmlanguageforreactivesynthesis
AT richardmmurray multiparadigmlanguageforreactivesynthesis
AT gerardjholzmann multiparadigmlanguageforreactivesynthesis
_version_ 1725744350303879168