Dynamic Epistemic Logic: solving the puzzles from Hans van Ditmarsch's tutorial course on Dynamic Epistemic Logic, NASSLLI 2010, June 20, 2010. See also

Dynamic Epistemic Logic and Knowledge Puzzles H.P. van Ditmarsch, W. van der Hoek, and B.P. Kooi http://www.csc.liv.ac.uk/~wiebe/pubs/Documents/iccs.pdf

Epistemic Puzzles Hans van Ditmarsch http://www.cs.otago.ac.nz/staffpriv/hans/cosc462/logicpuzzlesB.pdf

We encode the statement of the problem as a filter on possible worlds. The possible worlds consistent with the statement of the problem are the solutions.

"Agent A does not know proposition phi" is interpreted

as the statement that for all worlds consistent with the propositions A currently knows, phi is true in some but false in the others.

http://okmij.org/ftp/Algorithms.html#dyn-epistemology