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


Release history Release notifications

Download files

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

Files for py-aiger-abc, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size py_aiger_abc-0.1.0-py3-none-any.whl (3.5 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size py-aiger-abc-0.1.0.tar.gz (3.3 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page