Using Counterfactuals in Knowledge-Based Programming
<|reference_start|>Using Counterfactuals in Knowledge-Based Programming: This paper adds counterfactuals to the framework of knowledge-based programs of Fagin, Halpern, Moses, and Vardi. The use of counterfactuals is illustrated by designing a protocol in which an agent stops sending messages once it knows that it is safe to do so. Such behavior is difficult to capture in the original framework because it involves reasoning about counterfactual executions, including ones that are not consistent with the protocol. Attempts to formalize these notions without counterfactuals are shown to lead to rather counterintuitive behavior.<|reference_end|>
@article{halpern2003using,
    title={Using Counterfactuals in Knowledge-Based Programming},
    author={Joseph Y. Halpern and Yoram Moses},
    journal={arXiv preprint arXiv:cs/0311028},
    year={2003},
    archivePrefix={arXiv},
    eprint={cs/0311028},
    primaryClass={cs.DC cs.AI}
}