Freshly Printed - allow 4 days lead
Foundations of Probabilistic Programming
Probabilistic Programs. Explained. Verified. Applied.
Gilles Barthe (Edited by), Joost-Pieter Katoen (Edited by), Alexandra Silva (Edited by)
9781108488518, Cambridge University Press
Hardback, published 3 December 2020
582 pages
25 x 17.8 x 3.2 cm, 1.23 kg
'In our data-rich world, probabilistic programming is what allows programmers to perform statistical inference in a principled way for use in automated decision making. This rapidly growing field, which has emerged at the intersection of machine learning, statistics and programming languages, has the potential to become the driving force behind AI. But probabilistic programs can be counterintuitive and difficult to understand. This edited volume gives a comprehensive overview of the foundations of probabilistic programming, clearly elucidating the basic principles of how to design and reason about probabilistic programs, while at the same time highlighting pertinent applications and existing languages. With its breadth of topic coverage, the book will serve as an important and timely reference for researchers and practitioners.' Marta Kwiatkowska, University of Oxford
What does a probabilistic program actually compute? How can one formally reason about such probabilistic programs? This valuable guide covers such elementary questions and more. It provides a state-of-the-art overview of the theoretical underpinnings of modern probabilistic programming and their applications in machine learning, security, and other domains, at a level suitable for graduate students and non-experts in the field. In addition, the book treats the connection between probabilistic programs and mathematical logic, security (what is the probability that software leaks confidential information?), and presents three programming languages for different applications: Excel tables, program testing, and approximate computing. This title is also available as Open Access on Cambridge Core.
1. Semantics of Probabilistic Programming: A Gentle Introduction Fredrik Dahlqvist, Alexandra Silva and Dexter Kozen
2. Probabilistic Programs as Measures Sam Staton
3. An Application of Computable Distributions to the Semantics of Probabilistic Programs Daniel Huang, Greg Morrisett and Bas Spitters
4. On Probabilistic ?-Calculi Ugo Dal Lago
5. Probabilistic Couplings from Program Logics Gilles Barthe and Justin Hsu
6. Expected Runtime Analysis by Program Verification Benjamin Lucien Kaminski, Joost-Pieter Katoen and Christoph Matheja
7. Termination Analysis of Probabilistic Programs with Martingales Krishnendu Chatterjee, Hongfei Fu and Petr Novotný
8. Quantitative Analysis of Programs with Probabilities and Concentration of Measure Inequalities Sriram Sankaranarayanan
9. The Logical Essentials of Bayesian Reasoning Bart Jacobs and Fabio Zanasi
10. Quantitative Equational Reasoning Giorgio Bacci, Radu Mardare, Prakash Panangaden and Gordon Plotkin
11. Probabilistic Abstract Interpretation: Sound Inference and Application to Privacy José Manuel Calderón Trilla, Michael Hicks, Stephen Magill, Piotr Mardziel and Ian Sweet
12. Quantitative Information Flow with Monads in Haskell Jeremy Gibbons, Annabelle McIver, Carroll Morgan and Tom Schrijvers
13. Luck: A Probabilistic Language for Testing Lampropoulos Leonidas, Benjamin C. Pierce, Li-yao Xia, Diane Gallois-Wong, C?t?lin Hri?cu and John Hughes
14. Tabular: Probabilistic Inference from the Spreadsheet Andrew D. Gordon, Claudio Russo, Marcin Szymczak, Johannes Borgström, Nicolas Rolland, Thore Graepel and Daniel Tarlow
15. Programming Unreliable Hardware Michael Carbin and Sasa Misailovic.
Subject Areas: Machine learning [UYQM], Artificial intelligence [UYQ], Programming & scripting languages: general [UMX]