Software Projects

Most of our code is consolidated in these software projects.

Juice/LogicCircuits.jl
Juice/LogicCircuits.jl

A Julia package that offers researchers and practitioners efficient routines to construct, compile, and reason with Logic Circuits. It provides a wide range of functionality that enable tractable logical reasoning.

Code
Juice/ProbabilisticCircuits.jl
Juice/ProbabilisticCircuits.jl

A Julia package that offers researchers and practitioners efficient routines to construct, compile, learn and reason with Probabilistic Circuits. It provides a wide range of functionality that enable tractable probabilistic reasoning.

Code
Dice
Dice

The Dice probabilistic programming language, a probabilistic programming language for scalable exact probabilistic inference in discrete programs.

Code

Recent Papers with Code

Experiments and prototypes associated with specific research papers can be found by clicking on the code icon.

2021

[165] and . Tractable Regularization of Probabilistic Circuits, In Advances in Neural Information Processing Systems 35 (NeurIPS), . Oral spotlight presentation, acceptance rate 340/9122 = 3.7%
[164], , , and . A Compositional Atlas of Tractable Circuit Operations for Probabilistic Inference, In Advances in Neural Information Processing Systems 35 (NeurIPS), . Oral full presentation, acceptance rate 55/9122 = 0.6%
[163], and . Group Fairness by Probabilistic Modeling with Latent Fair Decisions, In Proceedings of the 35th AAAI Conference on Artificial Intelligence, .
[162], , , and . Juice: A Julia Package for Logic and Probabilistic Circuits, In Proceedings of the 35th AAAI Conference on Artificial Intelligence (Demo Track), .

2020

[161], , , and . Probabilistic Inference with Algebraic Constraints: Theoretical Limits and Practical Approximations, In Advances in Neural Information Processing Systems 33 (NeurIPS), .   Oral spotlight presentation, acceptance rate 385/9454 = 4.1%
[160], , and . Counterexample-Guided Learning of Monotonic Neural Networks, In Advances in Neural Information Processing Systems 33 (NeurIPS), .
[159], and . Scaling Exact Inference for Discrete Probabilistic Programs, In Proc. ACM Program. Lang. (OOPSLA), ACM, .  [doi] ACM SIGPLAN distinguished paper award
[158], , , and . Relax, compensate and then integrate, In Proceedings of the ECML-PKDD Workshop on Deep Continuous-Discrete Machine Learning (DeCoDeML), .  
[157], , , and . Scaling up Hybrid Probabilistic Inference with Logical and Arithmetic Constraints via Message Passing, In Proceedings of the 37th International Conference on Machine Learning (ICML), .  
[156], and . Off-Policy Deep Reinforcement Learning with Analogous Disentangled Exploration, In Proceedings of the 19th International Conference on Autonomous Agents and Multi-Agent Systems (AAMAS), .  
[155], , and . Learning Fair Naive Bayes Classifiers by Discovering and Eliminating Discrimination Patterns, In Proceedings of the 34th AAAI Conference on Artificial Intelligence, .

2019

[154], , , and . On Tractable Computation of Expected Predictions, In Advances in Neural Information Processing Systems 32 (NeurIPS), .
[153], , and . Smoothing Structured Decomposable Circuits, In Advances in Neural Information Processing Systems 32 (NeurIPS), .   Oral spotlight presentation, acceptance rate 164/6743 = 2.4%
[152], , and . What to Expect of Classifiers? Reasoning about Logistic Regression with Missing Features, In Proceedings of the 28th International Joint Conference on Artificial Intelligence (IJCAI), .  
[151] and . Efficient Search-Based Weighted Model Integration, In Proceedings of the 35th Conference on Uncertainty in Artificial Intelligence (UAI), .

Other Relevant Code

OpenWorldPDB
OpenWorldPDB

A Postgres-based implementation of query evaluation for open-world probabilistic databases

Code
Forclift
Forclift

Forclift is a prototype implementation of algorithms for first-order knowledge compilation, lifted probabilistic inference (exact and approximate), and lifted parameter and structure learning. It supports various input formals, including Markov logic and weighted model counting problems.

Code
ProbLog
ProbLog

ProbLog is a probabilistic logic programming language. It extends Prolog with probabilistic constructs. The inference and learning algorithms for ProbLog use state-of-the-art knowledge compilation techniques. DTProbLog is a decision-theoretic extension of ProbLog.

Code
PokerDemo
PokerDemo

PokerDemo is a classroom demo (in Dutch) to teach programming, expert, and multi-agent systems to high school students . It contains a visual programming tool that lets students create a rule-based poker player. Student can compete on the server with their friends and an artificial agent. (code)

Code
DaisyDiff
DaisyDiff

Daisy Diff is a Java library that diffs (compares) HTML files. It highlights added and removed words and annotates changes to the styling. This project was a Google Summer of Code 2007 project for DaisyCMS. A PHP version of the algorithm was developed for MediaWiki/Wikipedia in the Google Summer of Code 2008. Various content management systems use DaisyDiff for comparing HTML changes.

Code
JSDD
JSDD

A Java wrapper for the SDD library

Code

Data

Please consider using the following datasets.

Density Estimation Datasets
Density Estimation Datasets

A repository of standard datasets for discrete density estimation.

Code