I’ll present OmegaC, a probabilistic programming language with counterfactuals originally presented at ICML 2021, from a semanticist’s point of view. Counterfactuals are a new effect that makes it easy to express queries like “how much larger would the output be had the input been 1 larger.” I’ll show that counterfactual execution can actually be viewed as a combination of two features previously thought useless, laziness and dynamic scope, and I’ll present the (surprisingly simple) proof that dynamic scope, and therefore also the counterfactual do operator, is not “syntactic sugar” for other operators (i.e.: not macro-expressible).
Slides (hope.pptx) | 12.45MiB |
Sun 22 AugDisplayed time zone: Seoul change
Sun 22 Aug
Displayed time zone: Seoul change
23:30 - 01:00 | |||
23:30 30mTalk | First-class Names for Effect Handlers HOPE Ningning Xie University of Toronto, Youyou Cong Tokyo Institute of Technology, Daan Leijen Microsoft Research | ||
00:00 30mTalk | Tensor Partial Evaluation HOPE Eli Bingham Broad Institute, Fritz Obermeyer Broad Institute of MIT and Harvard, Yerdos Ordabayev Brandeis University, Du Phan UIUC File Attached | ||
00:30 30mTalk | Dynamic Scope + Laziness = Counterfactuals HOPE James Koppel Massachusetts Institute of Technology, USA, Armando Solar-Lezama Massachusetts Institute of Technology, Zenna Tavares Massachusetts Institute of Technology, Xin Zhang Peking University File Attached |