, Volume 139, Issue 2, pp 165224
First online:
Logics for Epistemic Programs
 Alexandru BaltagAffiliated withComputing Laboratory, Oxford University
 , Lawrence S. MossAffiliated withMathematics Department, Indiana University
Rent the article at a discount
Rent now* Final gross prices may vary according to local VAT.
Get AccessAbstract
We construct logical languages which allow one to represent a variety of possible types of changes affecting the information states of agents in a multiagent setting. We formalize these changes by defining a notion of epistemic program. The languages are twosorted sets that contain not only sentences but also actions or programs. This is as in dynamic logic, and indeed our languages are not significantly more complicated than dynamic logics. But the semantics is more complicated. In general, the semantics of an epistemic program is what we call aprogram model. This is a Kripke model of ‘actions’,representing the agents' uncertainty about the current action in a similar way that Kripke models of ‘states’ are commonly used in epistemic logic to represent the agents' uncertainty about the current state of the system. Program models induce changes affecting agents' information, which we represent as changes of the state model, called epistemic updates. Formally, an update consists of two operations: the first is called the update map, and it takes every state model to another state model, called the updated model; the second gives, for each input state model, a transition relation between the states of that model and the states of the updated model.
Each variety of epistemic actions, such as public announcements or completely private announcements to groups, gives what we call an action signature, and then each family of action signatures gives a logical language. The construction of these languages is the main topic of this paper. We also mention the systems that capture the valid sentences of our logics. But we defer to a separate paper the completeness proof.
The basic operation used in the semantics is called the update product. A version of this was introduced in Baltag et al. (1998), and the presentation here improves on the earlier one. The update product is used to obtain from any program model the corresponding epistemic update, thus allowing us to compute changes of information or belief. This point is of interest independently of our logical languages. We illustrate the update product and our logical languages with many examples throughout the paper.
 Title
 Logics for Epistemic Programs
 Journal

Synthese
Volume 139, Issue 2 , pp 165224
 Cover Date
 200403
 DOI
 10.1023/B:SYNT.0000024912.56773.5e
 Print ISSN
 00397857
 Online ISSN
 15730964
 Publisher
 Kluwer Academic Publishers
 Additional Links
 Topics
 Industry Sectors
 Authors

 Alexandru Baltag ^{(1)}
 Lawrence S. Moss ^{(2)}
 Author Affiliations

 1. Computing Laboratory, Oxford University, Oxford, OX1 3QD, U.K.
 2. Mathematics Department, Indiana University, Bloomington, IN, 47405, U.S.A.