Show simple item record

dc.contributor.authorAtkinson, Eric Hamilton
dc.contributor.authorSherman, Benjamin
dc.contributor.authorCarbin, Michael James
dc.date.accessioned2021-03-02T18:31:49Z
dc.date.available2021-03-02T18:31:49Z
dc.date.issued2020-06
dc.identifier.isbn9781450376136
dc.identifier.issn1531-7102
dc.identifier.urihttps://hdl.handle.net/1721.1/130049
dc.description.abstractSynchronous modeling is at the heart of programming languages like Lustre, Esterel, or Scade used routinely for implementing safety critical control software, e.g., fly-by-wire and engine control in planes. However, to date these languages have had limited modern support for modeling uncertainty - - probabilistic aspects of the software's environment or behavior - - even though modeling uncertainty is a primary activity when designing a control system. In this paper we present ProbZelus the first synchronous probabilistic programming language. ProbZelus conservatively provides the facilities of a synchronous language to write control software, with probabilistic constructs to model uncertainties and perform inference-in-the-loop. We present the design and implementation of the language. We propose a measure-theoretic semantics of probabilistic stream functions and a simple type discipline to separate deterministic and probabilistic expressions. We demonstrate a semantics-preserving compilation into a first-order functional language that lends itself to a simple presentation of inference algorithms for streaming models. We also redesign the delayed sampling inference algorithm to provide efficient streaming inference. Together with an evaluation on several reactive applications, our results demonstrate that ProbZelus enables the design of reactive probabilistic applications and efficient, bounded memory inference.en_US
dc.language.isoen
dc.publisherACMen_US
dc.relation.isversionof10.1145/3385412.3386009en_US
dc.rightsCreative Commons Attribution-Noncommercial-Share Alikeen_US
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/4.0/en_US
dc.sourcearXiven_US
dc.titleReactive probabilistic programmingen_US
dc.typeArticleen_US
dc.identifier.citationBaudart, Guillaume et al. “Reactive probabilistic programming.” Paper in the Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2020, PLDI ’20, London UK, June 15–20, 2020, ACM: 898-912 © 2020 The Author(s)en_US
dc.contributor.departmentMassachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratoryen_US
dc.relation.journalProceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)en_US
dc.eprint.versionAuthor's final manuscripten_US
dc.type.urihttp://purl.org/eprint/type/ConferencePaperen_US
eprint.statushttp://purl.org/eprint/status/NonPeerRevieweden_US
dc.date.updated2020-12-04T16:51:49Z
dspace.orderedauthorsBaudart, G; Mandel, L; Atkinson, E; Sherman, B; Pouzet, M; Carbin, Men_US
dspace.date.submission2020-12-04T16:51:53Z
mit.journal.volume2020en_US
mit.licenseOPEN_ACCESS_POLICY
mit.metadata.statusComplete


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record