Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Conferences, Workshops, Symposiums, and Seminars
  4. What are the Odds? Probabilistic programming in Scala
 
conference paper

What are the Odds? Probabilistic programming in Scala

Stucki, Sandro  
•
Amin, Nada  
•
Jonnalagedda, Manohar  
Show more
2013
Proceedings of the 4th Workshop on Scala
SCALA '13, 4th Workshop on Scala

Probabilistic programming is a powerful high-level paradigm for probabilistic modeling and inference. We present Odds, a small domain-specific language (DSL) for probabilistic programming, embedded in Scala. Odds provides first-class support for random variables and probabilistic choice, while reusing Scala's abstraction and modularity facilities for composing probabilistic computations and for executing deterministic program parts. Odds accurately represents possibly dependent random variables using a probability monad that models committed choice. This monadic representation of probabilistic models can be combined with a range of inference procedures. We present engines for exact inference, rejection sampling and importance sampling with look-ahead, but other types of solvers are conceivable as well. We evaluate Odds on several non-trivial probabilistic programs from the literature and we demonstrate how the basic probabilistic primitives can be used to build higher-level abstractions, such as rule-based logic programming facilities, using advanced Scala features.

  • Files
  • Details
  • Metrics
Type
conference paper
DOI
10.1145/2489837.2489848
Author(s)
Stucki, Sandro  
Amin, Nada  
Jonnalagedda, Manohar  
Rompf, Tiark  
Date Issued

2013

Publisher

ACM

Publisher place

New York, NY, USA

Published in
Proceedings of the 4th Workshop on Scala
ISBN of the book

978-1-4503-2064-1

Issue

11

Start page

11:1

Subjects

EDSL

•

Languages

•

Probabilistic inference

•

Probabilistic programming

•

Probability Monad

•

Scala

Editorial or Peer reviewed

REVIEWED

Written at

EPFL

EPFL units
LAMP1  
Event nameEvent placeEvent date
SCALA '13, 4th Workshop on Scala

Montpellier, France

July 2, 2013

Available on Infoscience
March 31, 2014
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/102289
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés