Skip to main content
Log in

Using counterfactuals in knowledge-based programming

  • Published:
Distributed Computing Aims and scope Submit manuscript

Abstract.

This paper adds counterfactuals to the framework of knowledge-based programs of Fagin, Halpern, Moses, and Vardi [3,4]. 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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Dwork, C., Moses, Y.: Knowledge and common knowledge in a Byzantine environment: crash failures. Information and Computation 88(2):156-186 (1990).

    MATH  Google Scholar 

  2. Engelhardt, K., van der Meyden, R., Moses, Y.: Knowledge and the logic of local propositions. In: Theoretical Aspects of Rationality and Knowledge: Proc. Seventh Conference (TARK 1998), 1998, pp. 29-41.

  3. Fagin, R., Halpern, J.Y., Moses, Y., Vardi, M.Y.: Reasoning about Knowledge. MIT Press, Cambridge, Mass., 1995.

  4. Fagin, R., Halpern, J.Y., Moses, Y., Vardi, M.Y.: Knowledge-based programs. Distrib. Comput. 10(4):199-225 (1997).

  5. Francez, N.: Fairness. Springer, Berlin New York, 1986.

  6. Friedman, N., Halpern, J.Y.: Modeling belief in dynamic systems. Part I: foundations. Artificial Intelligence 95(2):257-316 (1997).

    Article  MATH  Google Scholar 

  7. Goldszmidt, M., Pearl, J.: Rank-based systems: A simple approach to belief revision, belief update and reasoning about evidence and actions. In: Principles of Knowledge Representation and Reasoning: Proc. Third International Conference (KR ‘92), 1992, pp. 661-672.

  8. Hadzilacos, V.: A knowledge-theoretic analysis of atomic commitment protocols. In: Proc. 6th ACM Symp. on Principles of Database Systems, pp. 129-134, 1987.

  9. Hadzilacos, V., Halpern, J.Y.: Message-optimal protocols for Byzantine agreement. Mathematical Systems Theory 26:41-102 (1993).

    MathSciNet  MATH  Google Scholar 

  10. Halpern, J.Y.: Axiomatizing causal reasoning. Journal of A.I. Research 12:317-337 (2000).

    MathSciNet  MATH  Google Scholar 

  11. Halpern, J.Y., Fagin, R.: Modelling knowledge and action in distributed systems. Distrib. Comput. 3(4):159-179 (1989). A preliminary version appeared in: Proc. 4th ACM Symposium on Principles of Distributed Computing, 1985, with the title “A formal model of knowledge, action, and communication in distributed systems: preliminary report”.

  12. Halpern, J.Y., Moses, Y.: Knowledge and common knowledge in a distributed environment. J. ACM 37(3):549-587 (1990).

    Article  MATH  Google Scholar 

  13. Halpern, J.Y., Moses, Y., Waarts, O.: A characterization of eventual Byzantine agreement. SIAM J. Comput. 31(3):838-865 (2001).

  14. Halpern, J.Y., Zuck, L.D.: A little knowledge goes a long way: knowledge-based derivations and correctness proofs for a family of protocols. J. ACM 39(3):449-478 (1992).

    Article  MATH  Google Scholar 

  15. Kalai, E., Lehrer, E.: Subjective games and equilibria. Games and Economic Behavior 8:123-163 (1995).

    MathSciNet  MATH  Google Scholar 

  16. Lewis, D.K.: Counterfactuals. Harvard University Press, Cambridge, Mass., 1973.

  17. Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems: Specification. Springer, Berlin New York, 1992.

  18. Mazer, M.S.: A link between knowledge and communication in faulty distributed systems. In: Theoretical Aspects of Reasoning about Knowledge: Proc. Third Conference, 1990, pp. 289-304.

  19. Mazer, M.S., Lochovsky, F.H.: Analyzing distributed commitment by reasoning about knowledge. Technical Report CRL 90/10, DEC-CRL, 1990.

  20. Moses, Y., Tuttle, M.R.: Programming simultaneous actions using common knowledge. Algorithmica 3:121-169 (1988).

    MATH  Google Scholar 

  21. Neiger, G., Toueg, S.: Simulating real-time clocks and common knowledge in distributed systems. J. ACM 40(2):334-367 (1993).

    Article  MATH  Google Scholar 

  22. Pearl, J.: Causality: Models, Reasoning, and Inference. Cambridge University Press, New York, 2000.

  23. Spohn, W.: Ordinal conditional functions: a dynamic theory of epistemic states. In: Harper, W., Skyrms, B. (eds.), Causation in Decision, Belief Change, and Statistics, vol. 2, pp. 105-134. Reidel, Dordrecht, Netherlands, 1988.

  24. Stalnaker, R.C.: A theory of conditionals. In: Rescher, N. (ed.), Studies in Logical Theory, American Philosophical Quarterly Monograph Series, No. 2, pp. 98-112. Blackwell, Oxford, UK, 1968. Also appears in Harper, W.L., Stalnaker, R.C., Pearce, G. (eds.), Ifs. Dordrecht, Netherlands: Reidel, 1981.

  25. Stalnaker, R.C.: A defense of conditional excluded middle. In: Harper, W.L., Stalnaker, R., Pearce, G. (eds.), Ifs, pp. 87-104. Reidel, Dordrecht, Netherlands, 1980.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Joseph Y. Halpern.

Additional information

Received: 15 November 2001, Accepted: 15 April 2004, Published online: 13 July 2004

Joseph Y. Halpern: Work supported in part by NSF under grant IRI-96-25901, IIS-0090145, and CTC-0208535, by the Air Force Office of Scientific Research under grant F49620-96-1-0323 and F48620-02-1-0101, and by ONR under grants N00014-00-1-03-41, N00014-01-1-0795, and by the DoD Multidisciplinary University Research Initiative (MURI) program administered by the ONR under grant N00014-01-1-0795.)

A preliminary version of this paper appeared in the Proceedings of the Seventh Conference on Theoretical Aspects of Rationality and Knowledge (TARK), 1998.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Halpern, J.Y., Moses, Y. Using counterfactuals in knowledge-based programming. Distrib. Comput. 17, 91–106 (2004). https://doi.org/10.1007/s00446-004-0108-1

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00446-004-0108-1

Keywords

Navigation