Tractables/pyjuice

Interoperability with boolean circuits

Opened this issue · 3 comments

Hi,

Are there interoperability options with boolean circuits packages ? For instance convert a dDNNF into a pyjuice computation graph.

Best regards,
Arthur

Hi Arthur,

We are planning to integrate boolean circuit operations into pyjuice (either in this package or in another one that calls pyjuice) and add support to implement many neurosymbolic algorithms easily. Could you share what boolean circuit package you are using, and also what type of computations are you expecting? Thanks a lot!

Best,
Anji

Hi @liuanji,

Thanks for your quick answer. I would be interested in interoperability with the SDD format (for instance used in https://github.com/art-ai/pypsdd) and dDNNF format produced by the knowledge compiler d4 (https://www.cril.univ-artois.fr/en/software/d4/).

I would like to compute both PQE (Probabilistic Query Evaluation) and MPE (Most Probable Explanation). This means respectively working with + and x gates ((+, x) semi-ring) and max and + gates ((max, +) semi-ring).

Best regards,
Arthur

Hi Arthur,

Sorry for the late reply. I am not very familiar with pypsdd but will try to take a look this month. I will try to implement an interface between pyjuice and pypsdd so that the PQE will be supported directly (it is just the forward pass in pyjuice).

Best,
Anji