Skip to main content

Bridge to using Berkeley-ABC with py-aiger.

Project description

py-aiger-abc

Aiger <-> ABC bridge

PyPI version License: MIT

Installation

Non-Python Dependencies

This package currently assumes that the ABC and aigtoaig commands are installed and in the PATH. In the future, we hope to automatically include these dependencies, but currently one needs to install them on their own.

Python Package

If you just need to use aiger_abc, you can just run:

$ pip install py-aiger-abc

For developers, note that this project uses the poetry python package/dependency management tool. Please familarize yourself with it and then run:

$ poetry install

Usage

The primary entry point for using aiger_abc is the simplify function which uses abc to simplify an AIG. For example, below we show how aiger_abc can be used to simplify the following inefficient encoding of const false.

import aiger

x = aiger.atom('x')

f = x ^ x
print(f.aig)
aag 4 1 0 1 3
2
8
4 2 2
6 3 3
8 5 7
import aiger_abc
f2 = aiger_abc.simplify(f)
print(f2.aig)
aag 1 1 0 1 0
2
0

Explicitly Specifying for abc and aigtoaig commands

simplify supports explicitly specifying the abc and aigtoaig commands. This is useful if you have installed them in non-standard paths or names. E.g.,

f2 = aiger_abc.simplify(f, abc_cmd='abc', aigtoaig_cmf='aigtoaig')

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

py-aiger-abc-0.2.1.tar.gz (3.3 kB view hashes)

Uploaded Source

Built Distribution

py_aiger_abc-0.2.1-py3-none-any.whl (3.4 kB view hashes)

Uploaded Python 3

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