-
Notifications
You must be signed in to change notification settings - Fork 20
Open
Description
I am trying to load a Logical Circuit from SDD as follows:
with NamedTemporaryFile() as f:
# export the SDD to a file
alpha.save(f.name.encode())
f.flush()
# parse the SDD representation using the SDD class
alpha_sdd = SDD.from_file(f.name)
alpha_symbolic = alpha_sdd.build_circuit()
It's known that an SDD satisfies both structured decomposability and partitioned determinism. So, this Logical Circuit is supposed to have these properties as well.
However, when I printed out the properties of this Logical Circuit, it turned out that it does not satisfy structured decomposability.
alpha_symbolic.properties
StructuralProperties(smooth=True, decomposable=True, structured_decomposable=False, omni_compatible=False)
Meanwhile, I noticed that the build_circuit() function will trim and compress the SDD using unit propagation. So I assume these operations may damage the structure of SDD, making the resulting Logical Circuit does not possess the good properties held in SDDs.
I wonder whether my intuition is correct. Thanks!
Metadata
Metadata
Assignees
Labels
No labels