Bridge to using Berkeley-ABC with py-aiger.
Project description
py-aiger-abc
Aiger <-> ABC bridge
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for py_aiger_abc-0.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d650b6ee885fda9a949922adc1769d533370a315b924cb55e6bd7a497afe117d |
|
MD5 | 3631a9265cf35ca6a9d2301e2cc935df |
|
BLAKE2b-256 | 0c1d1675310d44d3c09d9efc72b24c114347369b78adecee6cd4cec79f93d647 |