  In everyday life it happens that a person has to reason about what other
people think and how they behave, in order to achieve his goals. In other
words, an individual may be required to adapt his behaviour by reasoning about
the others' mental state. In this paper we focus on a knowledge representation
language derived from logic programming which both supports the representation
of mental states of individual communities and provides each with the
capability of reasoning about others' mental states and acting accordingly. The
proposed semantics is shown to be translatable into stable model semantics of
logic programs with aggregates.
