Logic programming has been considered a viable solution for distributed computing since the Fifth Generation Computer Systems project . Nowadays, this line of thought is gaining new verve, pushed by the need for new programming paradigms for addressing new emerging issues in distributed computing. We argue that a missing piece in the current state-of-the-art is the capability to express statements about the knowledge state of distributed nodes. In fact, reasoning about the knowledge state of (group of) nodes has been demonstrated to be fundamental in order to design and analyze distributed protocols . To reach this goal, we designed Knowlog: Datalog ¬ augmented with a set of epistemic modal operators, allowing the programmer to directly express what a node "knows" instead of low level communication details.