github.com

GitHub - johnyf/openpromela: Synthesis of discrete dynamical systems from multi-paradigm specifications

  • ️Thu Feb 05 2015

Build Status Coverage Status

About

A synthesizer from open Promela specifications. It:

  • translates open Promela to linear temporal logic (LTL)
  • compiles the LTL formula to an implementation using the GR(1) game solver omega.games.gr1
  • dumps a transition relation that implements the open Promela specification.

The language and implementation are documented in:

Filippidis I., Murray R.M., Holzmann G.J.
A multi-paradigm language for reactive synthesis
4th Workshop on Synthesis (SYNT) 2015
Electronic Proceedings in Theoretical Computer Science (EPTCS)
vol.202, pp.73-97, 2016

Filippidis I., Murray R.M., Holzmann G.J.
Synthesis from multi-paradigm specifications
California Institute of Technology, Pasadena, CA, 2015
CDSTR:2015.003

Usage

The package can be used both as a library and from the command line. A script named ospin is created as entry point. It is placed where setuptools installs new executables, e.g., whre python itself resides. To learn how to use the script, invoke it with:

Installation

Use pip for openpromela itself:

Pure Python dependencies suffice, unless you have a demanding problem. In that case, build dd.cudd to interface to CUDD.

License

BSD-3, see LICENSE file.