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.0.tar.gz (108.0 kB view details)

Uploaded Source

File details

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

File metadata

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

File hashes

Hashes for omega-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f133e10867bbaedd536592f9b5c3e917253e47db075ea33a431e3f63f991648a
MD5 5e0c6a7f8dc18861f170ebf8e4e25e1e
BLAKE2b-256 6adaf096453ccb71004171f39dc68667d2e1c9571455e6e9b35fcae919c4f92a

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