def test_dot(): vtree = Vtree(var_count=4, var_order=[1, 2, 3, 4], vtree_type="right") if directory is not None: with (directory / "vtree1.gv").open("w") as ofile: s = vtree.dot() print(s, file=ofile) with (directory / "vtree2.gv").open("w") as ofile: s = vtree.dot2() print(s, file=ofile)
def main(): # set up vtree and manager var_count = 4 var_order = [2,1,4,3] vtree_type = "balanced" vtree = Vtree(var_count, var_order, vtree_type) manager = SddManager.from_vtree(vtree) # construct a formula (A^B)v(B^C)v(C^D) print("constructing SDD ... ") a, b, c, d = [manager.literal(i) for i in range(1, 5)] alpha = (a & b) | (b & c) | (c & d) print("done") print("saving sdd and vtree ... ") with open("output/sdd.dot", "w") as out: print(alpha.dot(), file=out) with open("output/vtree.dot", "w") as out: print(vtree.dot(), file=out) print("done")
from pysdd.sdd import SddManager, Vtree var_count = 3 var_order = [1, 2, 3] vtree_type = 'balanced' vtree = Vtree(var_count, var_order, vtree_type) manager = SddManager.from_vtree(vtree) a, b, c = [manager.literal(i) for i in range(1, 4)] alpha = c & (a | -b) with open('sdd.dot', 'w') as out: print(alpha.dot(), file=out) with open('vtree.dot', 'w') as out: print(vtree.dot(), file=out)