Scenario
Albert and Bernard want to know Cheryl's birthday. Cheryl provides a list of 10 possible dates:
- May 15, May 16, May 19
- June 17, June 18
- July 14, July 16
- August 14, August 15, August 17
Cheryl tells Albert privately the month only, and tells Bernard privately the day only.
The following conversation occurs:
- Albert: 'I don't know when Cheryl's birthday is, but I know that Bernard doesn't know either.'
- Bernard: 'At first I didn't know, but now I know.'
- Albert: 'Then I also know.'
Your Task
- Model the epistemic knowledge state transitions for Albert and Bernard.
- Perform step-by-step filtering of candidate dates.
- Determine Cheryl's exact birthday.
Constraints
- Both participants are perfect logicians who tell the truth.
Examples
May 19 and June 18 have unique day numbers. If Bernard had 18 or 19, he would know immediately.