Skip to main content

Python PPL wrapper

Project description

This Python package provides a wrapper to the C++ Parma Polyhedra Library (PPL).

The whole package started as a fork of a tiny part of the Sage software.

How it works

The names of objects and methods are the same as in the library:

>>> import ppl
>>> x = ppl.Variable(0)
>>> y = ppl.Variable(1)
>>> z = ppl.Variable(2)
>>> cs = ppl.Constraint_System()
>>> cs.insert(x >= 0)
>>> cs.insert(y >= 0)
>>> cs.insert(z >= 0)
>>> cs.insert(x + y + z == 1)
>>> poly = ppl.C_Polyhedron(cs)
>>> poly.minimized_generators()
Generator_System {point(1/1, 0/1, 0/1), point(0/1, 1/1, 0/1), point(0/1, 0/1, 1/1)}

Installation

The project is available at Python Package Index and can be installed with pip:

$ pip install pplpy

Source

You can find the latest version of the source code on github: https://github.com/videlec/pplpy/

Requirements

On Debian/Ubuntu systems these can be installed with:

$ sudo apt-get install cython libgmp-dev libppl-dev

Project details


Download files

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

Files for pplpy, version 0.6
Filename, size File type Python version Upload date Hashes
Filename, size pplpy-0.6.tar.gz (392.6 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page