We introduce [Ascr ]k, an extension of the action description language [Ascr ] (Gelfond and Lifschitz,
1993) to handle actions which affect knowledge. We use sensing actions to increase an agent's
knowledge of the world and non-deterministic actions to remove knowledge. We include
complex plans involving conditionals and loops in our query language for hypothetical
reasoning. We also present a translation of [Ascr ]k domain descriptions into epistemic logic
programs.This paper extends the results of the work first presented in Lobo et al. (1997).