]> git.unchartedbackwaters.co.uk Git - francis/stp.git/commit
Bitblast formula that don't contain arrays into and-inverter graphs. This uses the...
authortrevor_hansen <trevor_hansen@e59a4935-1847-0410-ae03-e826735625c1>
Sat, 3 Jul 2010 13:15:31 +0000 (13:15 +0000)
committertrevor_hansen <trevor_hansen@e59a4935-1847-0410-ae03-e826735625c1>
Sat, 3 Jul 2010 13:15:31 +0000 (13:15 +0000)
commit6acdcaffa8121c5fed09d00466bd6200228ae6e6
tree6b4a8eeb1bfb9450f195b890204ae9bd285bf767
parent5f6e2282a5c516f78b82560c7d7ca9f46b0c8b8e
Bitblast formula that don't contain arrays into and-inverter graphs. This uses the AIG implementation provided by the ABC package.

This has some advantages:
* The AIG nodes are smaller than our ASTNodes, so it uses less memory.
* The CNFs generated by ABC are smaller, so generally solving is quicker.

Some notes:
* I haven't made the CNF converter incremental, so bitblasting to AIGs is only enabled for bit-vector problems (which STP bitblasts eagerly).
* AIG re-writing isn't enabled yet.
* From prior experience some big problems fail in CNF encoding. All of our test cases pass though.

git-svn-id: https://stp-fast-prover.svn.sourceforge.net/svnroot/stp-fast-prover/trunk/stp@913 e59a4935-1847-0410-ae03-e826735625c1
18 files changed:
src/AST/RunTimes.cpp
src/AST/RunTimes.h
src/STPManager/STP.cpp
src/absrefine_counterexample/AbsRefine_CounterExample.h
src/absrefine_counterexample/AbstractionRefinement.cpp
src/absrefine_counterexample/CounterExample.cpp
src/absrefine_counterexample/Makefile
src/c_interface/c_interface.cpp
src/main/main.cpp
src/to-sat/AIG/BBNodeAIG.h
src/to-sat/AIG/BBNodeManagerAIG.h
src/to-sat/AIG/ToSATAIG.h
src/to-sat/BBNodeManagerASTNode.h
src/to-sat/BitBlaster.cpp
src/to-sat/BitBlaster.h
src/to-sat/ToSAT.cpp
src/to-sat/ToSAT.h
src/to-sat/ToSATBase.h