Abstract
Reasoning about knowledge seems to play a fundamental role in distributed systems. Indeed, such reasoning is a central part of the informal intuitive arguments used in the design of distributed protocols. Communication in a distributed system can be viewed as the act of transforming the system's state of knowledge. This paper presents a general framework for formalizing and reasoning about knowledge in distributed systems. It is shown that states of knowledge of groups of processors are useful concepts for the design and analysis of distributed protocols. In particular, distributed knowledge corresponds to knowledge that is “distributed” among the members of the group, while common knowledge corresponds to a fact being “publicly known.” The relationship between common knowledge and a variety of desirable actions in a distributed system is illustrated. Furthermore, it is shown that, formally speaking, in practical systems common knowledge cannot be attained. A number of weaker variants of common knowledge that are attainable in many cases of interest are introduced and investigated.
References
- 1 AUMANN, R.J. Agreeing to disagree. Ann. Stat. 4, 6(1976), 1236-1239.Google Scholar
- 2 BARWlSV, J. Scenes and other situations. J. Philo. LXXVIII 7 (1981), 369-397.Google Scholar
- 3 CHANDY, K. M., AND LAMPORT, L. Distributed snapshots: Determining global states of distributed systems. ACM Trans. Comput. Syst. 3, 1 (1985), 63-75. Google Scholar
- 4 CHANDY, K. M., AND MISRA, J. How processes learn. Dist. Comput. 1, 1 (1986), 40-52. Google Scholar
- 5 CLARK, H. H., AND MARSHALL, C.R. Definite reference and mutual knowledge. In Elements of Discourse Understanding, A. K. Joshi, B. L. Webber, and I. A. Sag, eds. Cambridge University Press, Cambridge, Mass., 1981, pp. 10-63.Google Scholar
- 6 CRISTIAN, F., AGHILI, H., STRONG, H. R., AND DOLLY, n. Atomic broadcast: From simple diffusion to Byzantine agreement. In Proceedings of the 15th International Annual Symposium on Fault- Tolerant Computing Systems. IEEE, Washington, D.C., 1985, pp. 200-206.Google Scholar
- 7 DOLEV, D., HALPERN, J. Y., AND STRONG, H.R. On the possibility and impossibility of achieving clock synchronization. J. Comput. Syst. Sci. 32, 2 (1986), 230-250. Google Scholar
- 8 DOLEV, D., REISCHUK, R., AND STRONG, H.R. Eventual is earlier than immediate. In Proceedings of the 23rd IEEE Symposium on Foundations of Computer Science. IEEE, Washington, D.C., 1982, pp. 196-203.Google Scholar
- 9 DWORK, C., AND MOSES, Y. Knowledge and common knowledge in a Byzantine environment I: Crash failures (extended abstract). In Theoretical Aspects of Reasoning about Knowledge: Proceedings of the 1986 Conference, J. Y. Halpern, ed. Morgan Kaufmann, San Mateo, Calif., 1986, pp. 149-170. Inf. Computation, in press. Google Scholar
- 10 EMERSON, E. A., AND CLARKE, E. M. Using branching time temporal logic to synthesize synchronization skeletons. Sci. Comput. Prog. 2 (1982), 241-266.Google Scholar
- 11 FAGIN, R., AND HALPERN, J.Y. Belief, awareness, and limited reasoning. Artif. Int. 34 (1988), 39-76. Google Scholar
- 12 FAGIN, R., AND HALPERN, J.Y. Reasoning about knowledge and probability: Preliminary report. In Proceedings of the 2nd Conference on Theoretical Aspects of Reasoning about Knowledge, M. Y. Vardi, ed. Morgan Kaufmann, San Mateo, Calif., 1988, pp. 277-293. Google Scholar
- 13 FAGIN, R., HALPERN, J. V., AND VARDI, i.V. What can machines know? On the epistemic properties of machines. In Proceedings of the National Conference on Artificial Intelligence (AAAI- 86), 1986, pp. 428-434. A revised and expanded version appears as: What can machines know? On the properties of knowledge in distributed systems. IBM Res. Rep. RJ56250. IBM, 1988.Google Scholar
- 14 FISCHER, M. J., AND IMMERMAN, N. Foundations of knowledge for distributed systems. In Theoretical Aspects of Reasoning about Knowledge: Proceedings of the 1986 Conference, J. Y. Halpern, ed. Morgan Kaufmann, San Mateo, Calif., 1986, pp. 171-186. Google Scholar
- 15 FISCHER, i. J., LYNCH, N. A., AND PATERSON, M.S. Impossibility of distributed consensus with one faulty processor. J. ACM 32, 2 (1985), 374-382. Google Scholar
- 16 GALLAGER, R.G. Seminar on computer communication networks. Office of Industrial Liaison, NIT, Cambridge, Mass., 1979.Google Scholar
- 17 GRAY, j. Notes on database operating systems. IBM Res. Rep. RJ 2188. IBM, Aug. 1987.Google Scholar
- 18 HADZILACOS, V. A knowledge-theoretic analysis of atomic commitment protocols. In Proceedings of the 6th ACM Symposium on Principles of Database Systems. ACM, New York, 1987, pp. 129-134. A revised version has been submitted for publication. Google Scholar
- 19 HALPERN, J. Y. Using reasoning about knowledge to analyze distributed systems. In Annual Review of Computer Science, Vol. 2, J. Traub, B. Grosz, B. Lampson, and N. Nilson, eds. Annual Reviews, Inc., Palo Alto, Calif., 1987, pp. 37-68.Google Scholar
- 20 HALPERN, J. Y., AND FAGIN, R. A formal model of knowledge, action, and communication in distributed systems: Preliminmary report. In Proceedings of the 4th ACM Symposium on Principles of Distributed Computing. ACM, New York, 1985, pp. 224-236. A revised version appears as: Modelling knowledge and action in distributed systems. Dist. Computations 3 (1989), 159-177. Google Scholar
- 21 HALPERN, J. V., MEGIDDO, N., AND MUNSHI, A. Optimal precision in the presence of uncertainty. J. Complexity 1 (1985), 170-196.Google Scholar
- 22 HALPERN, J. Y., AND MOSES, Y. Knowledge and common knowledge in a distributed environment. In Proceedings of the 3rd ACM Conference on Distributed Computing. ACM, New York, 1984, pp. 50-61. A revised and expanded version appears as: IBM Res. Rep. RJ 4421. IBM, Yorktown Heights, N.Y., 1988. Google Scholar
- 23 HALPERN, J. V., AND MOSES, Y. A guide to the modal logics of knowledge and belief. In Proceedings of the 9th International Joint Conference on Artificial Intelligence (IJCAI-85). 1985, pp. 480-490.Google Scholar
- 24 HALPERN, J. Y., AND ZUCK, L.D. A little knowledge goes a long way: Simple knowledge-based derivations and correctness proofs for a family of protocols. IBM Res. Rep. RJ 5857. IBM, 1987.Google Scholar
- 25 HINTIKKA, J. Knowledge and Belief Cornell University Press, Ithaca, N.Y., 1962.Google Scholar
- 26 KATZ, S., AND TAUBENFELD, G. What processes know: Definitions and proof methods. In Proceedings of the 5th ACM Symposium on Principles of Distributed Computing. ACM, New York, 1986, pp. 249-262. Google Scholar
- 27 KOZEN, D. Results on the propositional ~-calculus. Theoret. Comput. Sci. 27, 1 (1983), 333-354.Google Scholar
- 28 LADNER, R., AND REIF, J. The logic of distributed protocols (preliminary report). In Theoretical Aspects of Reasoning about Knowledge: Proceedings of the 1986 Conference, J. Y. Halpern, ed. Morgan Kaufman, San Mateo, Calif., 1986, pp. 207-222. Google Scholar
- 29 LEVESQtJE, H. A logic of implicit and explicit belief. In Proceedings of the National Conference on Artificial Intelligence (AAAI-84 ). 1984, pp. 198-202.Google Scholar
- 30 MANNA, Z., AND WOLPER, P. L. Synthesis of communication processes from temporal logic specifications. ACM Trans. Program. Lang. Syst. 6, 1 (1984), 68-93. Google Scholar
- 31 MAZER, M.S. A knowledge theoretic account of recovery in distributed systems: The case of negotiated commitment. In Proceedings of the 2nd Conference on Theoretical Aspects of Reasoning about Knowledge, M. Y. Vardi, ed. Morgan Kaufman, San Mateo, Calif., 1988, pp. 309-324. Google Scholar
- 32 MCCARTHY, J., SATO, M., HAYASHh T., AND IGARISm, S. On the model theory of knowledge. Tech. Rep. STAN-CS-78-657. Stanford Univ., Stanford, Calif., 1979. Google Scholar
- 33 MOORE, R.C. A formal theory of knowledge and action. In Formal Theories of the Commonsense World, J. Hobbs and R. C. Moore, eds. Ablex Publishing Corp., Norwood, N.J., 1985, pp. 319-358.Google Scholar
- 34 MOSES, Y. Resource-bounded knowledge. In Proceedings of the 2nd Conference on Theoretical Aspects of Reasoning about Knowledge, M. Y. Vardi, ed. Morgan Kaufmann, San Mateo, Calif., 1988, pp. 261-276. Google Scholar
- 35 MOSES, Y., DOLEV, D., AND HALPERN, J.Y. Cheating husbands and other stories: A case study of knowledge, action, and communication. Dist. Comput. 1, 3 (1986), 167-176.Google Scholar
- 36 MOSES, Y., AND TUTTLE, M.R. Programming simultaneous actions using common knowledge. Algorithmica 3 (1988), 121-169.Google Scholar
- 37 NEIGER, G. Knowledge consistency: A useful suspension of disbelief. In Proceedings of the 2nd Conference on Theoretical Aspects of Reasoning about Knowledge, M. Y. Vardi, ed. Morgan Kaufman, San Mateo, Calif., 1988, pp. 295-308. Google Scholar
- 38 NF.IGER, G., AND TOUEG, S. Substituting for real time and common knowledge in asynchronous distributed systems. J. A CM.Google Scholar
- 39 PANANGADEN, P., AND TAYLOR, S. Concurrent common knowledge: a new definition of agreement for asynchronous systems. In Proceedings of the 7th ACM Symposium on Principles of Distributed Computing. ACM, New York, 1988, pp. 197-209. Google Scholar
- 40 PARIKH, R. AND RAMANUJAM, R. Distributed processing and the logic of knowledge. In Proceedings of the Workshop on Logics of Programs, R. Parikh, ed. Springer-Verlag, Berlin, 1985, pp. 256-268. Google Scholar
- 41 ROSENSCHEIN, S.J. Formal theories of AI in knowledge and robotics. New Gen. Comput. 3 (1985), 345-357. Google Scholar
- 42 ROSENSCHEIN, S. J., AND KAELBLING, L. P. The synthesis of digital machines with provable epistemic properties. In Theoretical Aspects of Reasoning about Knowledge: Proceedings of the 1986 Conference, J. Y. Halpern, ed. Morgan Kaufmann, San Mateo, Calif., 1986, pp. 83-97. Google Scholar
- 43 TARSKI, A. A lattice-theoretic fixpoint theorem and its applications. Pacific J. Math. 5 (1955), 285-309.Google Scholar
- 44 YEMINI, Y., AND COHEN, D. Some issues in distributed processes communication. In Proceedings of the 1st International Conference on Distributed Computing Systems. IEEE, Washington, D.C., 1979, pp. 199-203.Google Scholar
Index Terms
Knowledge and common knowledge in a distributed environment





Comments