Skip to main content

Symbolic algorithms for solving games of infinite duration.

Project description

[![Build Status][build_img]][travis] [![Coverage Status][coverage]][coveralls]

About

A package of symbolic algorithms for solving games of infinite duration. It can be used to generate software from [temporal logic specifications][specs]. This is useful for designing systems, especially vehicles that carry humans.

It contains:

  • [Synthesis][synthesis] algorithms of [Moore][moore] or [Mealy][mealy] strategies for: - [generalized Streett(1)][streett1] games (known as [GR(1)][gr1]) - generalized Rabin(1) games ([counter-strategies][rabin1] to GR(1)) - detection of trivial realizability in GR(1) games.

  • [First-order][fol] [linear temporal logic][LTL] (LTL) with [rigid quantification][rigid quantification] and substitution.

  • [Bitblaster][bitblasting] of quantified integer arithmetic (integers -> bits).

  • Translation from [past][past LTL] to future LTL, using [temporal testers][temporal testers].

  • Symbolic automata that include: - methods that compile first-order logic to, and maintain, the underlying [binary decision diagrams][bdd] (BDDs) - functions for generatining primed variables, and BDD orderings.

  • [Semi-enumerated automata][tla-in-pictures] (and “transition systems”).

  • Flattening of semi-enumerated transition systems to LTL.

  • Enumeration / plotting of BDDs representing sets and actions.

Documentation

In [doc/doc.md][doc].

Installation

` pip install omega `

or

` python setup.py install `

The package and its dependencies are pure Python.

For solving demanding games, install the [Cython][cython] module dd.cudd that interfaces to [CUDD][cudd]. Instructions are available [at dd][dd].

License

[BSD-3][bsd3], see LICENSE file.

[specs]: http://research.microsoft.com/en-us/um/people/lamport/tla/book-02-08-08.pdf [synthesis]: http://dx.doi.org/10.1007/BFb0035748 [moore]: https://web.archive.org/web/20120216141113/http://people.mokk.bme.hu/~kornai/termeszetes/moore_1956.pdf [mealy]: http://dx.doi.org/10.1002/j.1538-7305.1955.tb03788.x [streett1]: http://dx.doi.org/10.1016/j.ic.2005.01.006 [gr1]: http://dx.doi.org/10.1007/11609773_24 [rabin1]: https://online.tugraz.at/tug_online/voe_main2.getvolltext?pCurrPk=47554 [fol]: https://en.wikipedia.org/wiki/First-order_logic [past LTL]: http://dx.doi.org/10.1007/3-540-15648-8_16 [LTL]: http://dx.doi.org/10.1109/SFCS.1977.32 [temporal testers]: http://doi.org/10.1007/978-3-540-69850-0_11 [rigid quantification]: http://dx.doi.org/10.1007/978-1-4612-4222-2 [bitblasting]: http://dx.doi.org/10.1007/978-3-540-74105-3 [bdd]: http://dx.doi.org/10.1109/TC.1986.1676819 [tla-in-pictures]: http://dx.doi.org/10.1109/32.464544 [doc]: https://github.com/johnyf/omega/blob/master/doc/doc.md [cython]: https://en.wikipedia.org/wiki/Cython [cudd]: http://vlsi.colorado.edu/~fabio/CUDD [dd]: https://github.com/johnyf/dd#cython-bindings [bsd3]: http://opensource.org/licenses/BSD-3-Clause

[build_img]: https://travis-ci.org/johnyf/omega.svg?branch=master [travis]: https://travis-ci.org/johnyf/omega [coverage]: https://coveralls.io/repos/johnyf/omega/badge.svg?branch=master [coveralls]: https://coveralls.io/r/johnyf/omega?branch=master

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

omega-0.1.1.tar.gz (108.7 kB view details)

Uploaded Source

File details

Details for the file omega-0.1.1.tar.gz.

File metadata

  • Download URL: omega-0.1.1.tar.gz
  • Upload date:
  • Size: 108.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for omega-0.1.1.tar.gz
Algorithm Hash digest
SHA256 ecf793cf48ef7a75936dd491371f325de0371a8547c7384c3e98c96f3c49f757
MD5 ea1766928c02c5addf8cf461d36e2c03
BLAKE2b-256 a801af791ddff95eb9c6cc0115acb5207a644eb01aab92c2dbd223c702439fce

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page