Abstract types in probabilistic programming
summary
Library called lazy people implements higher-order probabilistic types and runs Metropolis–Hastings to do regression: a rand_linear prior draws slope and intercept, returns 100 sampled lines and conditions on seven noisy points to get a posterior. Semantics use quasi‑Borel spaces; Polya’s urn module is implemented two ways — stateful urn vs a hidden uniform real — and their equivalence is proven by three axioms and Hilbert–Post completeness (and later a coinductive account). Memoization is implemented (stateful) to build random functions; conjectures remain about dataflow preservation for memoize.
AI-written summary · about
