Skip to content

Commit fe84c54

Browse files
authored
Lazy Aiger (#118)
* Started working on lazy AIG variant. * Implemented Lazy Sequential Composition. * Implemented parallel composition * Change shim to support latches easily * flake8 * bump to python 3.7 * update lock file * First draft as flattening LazyAIG * draft of lazy aiger with similar initial performance. * Implement parcompose + simplifications * flake8 * implement getitems via lazyaig * reimplement cutlatches w.r.t. lazy cutlatches. * flake8 * Implemented loopback * Implemented loopback in terms of lazy aig * remove dead code. * update versions. * initial unrolled implementatino. * flake8 * Implement unrolling. * fix typo. * Revert aig to use original implementations until stable. * Use master's expr.py * Allow lazy export of .aig * flake8 * add lazy_aig attribute. * fix bug in latch handling in flatten. * Update tests * Added tests to show bugs in current implementation. * Replaced lazy implementations that are confirmed to work. * commiting before changing approaches. * Start alternative lazy implementation around classes. * Start combining Lazy objects into EDSL * Draft of fully functioning lazy aiger! * FrozenSet -> PMap * Bump major version. * Move test location outside of module. * drop cnf as circular dependency * bump py-aiger dependency * clean ups * flake8
1 parent fc52461 commit fe84c54

16 files changed

+834
-463
lines changed

.drone.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: default
33

44
steps:
55
- name: test
6-
image: python:3.6
6+
image: python:3.7
77
environment:
88
CODECOV_TOKEN:
99
from_secret: codecov_token

aiger/__init__.py

+1
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,4 @@
44
from aiger.common import tee, empty, identity, delay, parity_gate
55
from aiger.parser import parse, load
66
from aiger.expr import atom, atoms, ite, BoolExpr
7+
from aiger.lazy import *

0 commit comments

Comments
 (0)