GenJAX v1.0.9 - POPL 2026 Canonical Artifact
GenJAX v1.0.9 - POPL 2026 Canonical Artifact
This is the canonical version for POPL 2026 artifact evaluation.
About GenJAX
GenJAX is a probabilistic programming language (PPL) designed around programmable inference - automation that allows users to express and customize Bayesian inference algorithms.
What's Included
- Complete GenJAX implementation with source code and comprehensive tests
- Four case studies from the empirical evaluation:
- Fair Coin (Beta-Bernoulli conjugate inference) → Figure 16 (a)
- Curve Fitting with Outlier Detection → Figures 4, 5, 6
- Game of Life Inverse Dynamics → Figure 18
- Robot Localization with SMC → Figure 19
Reproducing Paper Figures
pixi install
pixi run paper-figures # CPU execution (~4 minutes on Apple M4)
pixi run paper-figures-gpu # GPU execution (requires CUDA 12)Changes in v1.0.9
- Comprehensive README Quick Example: Complete walkthrough of polynomial regression from paper's Overview section:
- Vectorizing generative functions with vmap (matches Figure 3)
- Vectorized programmable inference via importance sampling (matches Figure 5)
- Improving robustness with stochastic branching (matches Figure 6)
- Programmable inference kernel mixing Gibbs + HMC
- Added inline comments throughout all examples
- Can be run as linear notebook-style walkthrough
Tested Hardware
- CPU: Apple M4 MacBook Air (10 cores, 16GB, macOS 15.6)
- GPU: RTX 4090 + AMD Ryzen 7 7800X3D (Pop!_OS 22.04)
Citation
See CITATION.cff in the repository for complete citation information with all 10 authors and their ORCID identifiers.