Course schedule

September 2016
MondayTuesdayWednesdayThursdayFriday
29
30
31
1
2
5
6
7

The problem

Review Basic probability, including the "joint" probability of two or more events occurring, and the "conditional" probability of an event occurring when the result of another event is known. To keep things simple, stick to problem domains where only finitely many events are possible (e.g., the flip of a coin, the role of a die, the presence or absence of a medical diagnosis, and so on).

Topic: Inferring selection of dice

8
9
12

The problem

Topic: Abstractions for probability distributions: design functions for creating, transforming, combining, and querying distributions

13
14

The problem

Topic: Design and implementation of functions for probability distributions with finite support

15
16
19

The problem

Topic: Design and implementation of functions for probabilistic computation, final session

20
21

Handout: read

Operational semantics

Review Big-step (natural-deduction) operational semantics and small-step operational semantics

Topic: Extending our small functional language by adding probabilistic constructs with semantics

22
23
26

Coding probability again

Topic: Code Show and Tell: Coding dice problems using functions on general distributions

27
28

The probability monad

Topic: Shallow embedding of probabilistic modeling into Haskell

29
30

October 2016
MondayTuesdayWednesdayThursdayFriday
26

Coding probability again

Topic: Code Show and Tell: Coding dice problems using functions on general distributions

27
28

The probability monad

Topic: Shallow embedding of probabilistic modeling into Haskell

29
30
3

The probability monad

Topic: Designing with the probability monad

2nd round of solutions to dice problems (11:59PM)

4
5

Continuous variables via sampling

Read Sungwoo Park, Frank Pfenning, and Sebastian Thrun, A Probabilistic Language Based on Sampling Functions

Topic: Translations between λ-∘ and the probability monad

6
7
10

No class: Indigenous Peoples' Day

11

Start exploring project ideas and teams

12

Continuous variables via sampling

Topic: Translations wrapup; analysis of A Probabilistic Language Based on Sampling Functions

13
14
17

Continuous variables via sampling

Topic: λ-∘ wrapup: this time I really mean it (see the detailed plan)

18
19

Wild West: Church

Topic: Comparing Church with other probabilistic languages (plus midterm course evaluations)

20
21
24

Wild West: Church

Topic: Church wrapup

25

Ready to present project idea in class on Wednesday 26 October

26

Project refinement

Topic: Mutual criticism of project proposals

27
28
31

Measure-theoretic probability

Topic: Lebesgue measure and counting measure; Abstract integration

1

Written project proposals due at 5:00 pm

2

Measure-theoretic probability

Topic: Language design using measure-theoretic probability

3
4

November 2016
MondayTuesdayWednesdayThursdayFriday
31

Measure-theoretic probability

Topic: Lebesgue measure and counting measure; Abstract integration

1

Written project proposals due at 5:00 pm

2

Measure-theoretic probability

Topic: Language design using measure-theoretic probability

3
4
7

The wild West

Topic: language-design wrapup; a little Wolfe

8
9

Experiences in the wild West

Topic: Code show and tell for dice problems solved using mature systems

10

Overview of artificial intelligence (colloquium, John Launchbury, 3pm)

11
14

Calculating densities

Topic: Deeply embedded modeling

15
16

Calculating densities

Topic: Probability densities

17
18
21

Disintegration

Read Shan and Ramsey

Topic: Borel's paradox and disintegration

22
23

No class: Thanksgiving

24
25
28

Disintegration

Topic: A disintegrator for continuous distributions

29
30

Project criteria

Topic: Expectations for a successful project

1
2

December 2016
MondayTuesdayWednesdayThursdayFriday
28

Disintegration

Topic: A disintegrator for continuous distributions

29
30

Project criteria

Topic: Expectations for a successful project

1
2
5

Disintegration

Read Shan and Ramsey

Topic: Calculating disintegrations

6
7

Monads with densities

Read Scibior, Gharamani, and Gordon, "Practical Probabilistic Programming with Monads"

Topic: Practical Haskell

8
9

Project presentations, roughly 10:00–3:00, Burden Lounge, Anderson

12

No class: Makeup day for workshop on 12/9

13
14
15

Final papers due

16
19
20
21
22
23
26
27
28
29
30