Abstract
Consider a distributed system N in which each agent has an input value and each communication link has a weight. Given a global function, that is, a function f whose value depends on the whole network, the goal is for every agent to eventually compute the value f(N). We call this problem global function computation. Various solutions for instances of this problem, such as Boolean function computation, leader election, (minimum) spanning tree construction, and network determination, have been proposed, each under particular assumptions about what processors know about the system and how this knowledge can be acquired. We give a necessary and sufficient condition for the problem to be solvable that generalizes a number of well-known results [3, 28, 29]. We then provide a knowledge-based (kb) program (like those of Fagin, Halpern, Moses, and Vardi [8,9]) that solves global function computation whenever possible. Finally, we improve the message overhead inherent in our initial kb program by giving a counterfactual belief-based program [15] that also solves the global function computation whenever possible, but where agents send messages only when they believe it is necessary to do so. The latter program is shown to be implemented by a number of well-known algorithms for solving leader election.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Angluin, D.: Local and global properties in netwroks of processors. In: Proc. 12th ACM Symp. on Theory of Computing, pp. 82–93 (1980)
Attyia, H., Gorbach, A., Moran, S.: Computing in totally anonymous asynchronous shared memory systems. Information and Computation 173(2), 162–183 (2002)
Attyia, H., Snir, M., Warmuth, M.K.: Computing on an anonymous ring. Journal of ACM 35(4), 845–875 (1988)
Bellman, R.: On a routing problem. Quarterly of Applied Mathematics 16(1), 87–90 (1958)
Bickford, M., Constable, R.C., Halpern, J.Y., Petride, S.: Knowledge-based synthesis of distributed systems using event structures. In: Baader, F., Voronkov, A. (eds.) LPAR 2004. LNCS, vol. 3452, pp. 449–465. Springer, Heidelberg (2005)
Chang, E., Roberts, R.: An improved algorithm for decentralized extrema-finding in circular configurations of processes. Communications of the ACM 22(5), 281–283 (1979)
Dwork, C., Moses, Y.: Knowledge and common knowledge in a Byzantine environment: crash failures. Information and Computation 88(2), 156–186 (1990)
Fagin, R., Halpern, J.Y., Moses, Y., Vardi, M.Y.: Reasoning about Knowledge. MIT Press, Cambridge (2003); A revised paperback edition was published in 2003
Fagin, R., Halpern, J.Y., Moses, Y., Vardi, M.Y.: Knowledge-based programs. Distributed Computing 10(4), 199–225 (1997)
Ford, L.R., Fulkerson, D.R.: Flows in Networks. Princeton University Press, Princeton (1962)
Gallager, R.G., Humblet, P.A., Spira, P.M.: A distributed algorithm for minimum-weight spanning trees. ACM Trans. on Programming Languages and Systems 5(1), 66–77 (1983)
Grove, A.J.: Naming and identity in epistemic logic II: a first-order logic for naming. Artificial Intelligence 74(2), 311–350 (1995)
Grove, A.J., Halpern, J.Y.: Naming and identity in epistemic logics, Part I: the propositional case. Journal of Logic and Computation 3(4), 345–378 (1993)
Hadzilacos, V.: A knowledge-theoretic analysis of atomic commitment protocols. In: Proc. 6th ACM Symp. on Principles of Database Systems, pp. 129–134 (1987)
Halpern, J.Y., Moses, Y.: Using counterfactuals in knowledge-based programming. Distributed Computing 17(2), 91–106 (2004)
Halpern, J.Y., Moses, Y., Waarts, O.: A characterization of eventual Byzantine agreement. SIAM Journal on Computing 31(3), 838–865 (2001)
Halpern, J.Y., Zuck, L.D.: A little knowledge goes a long way: knowledge-based derivations and correctness proofs for a family of protocols. Journal of the ACM 39(3), 449–478 (1992)
Johnson, R.E., Schneider, F.B.: Symmetry and similarity in distributed systems. In: Proc. 4th ACM Symp. on Principles of Distributed Computing, pp. 13–22 (1985)
Lann, G.L.: Distributed systems–towards a formal approach. In: IFIP Congress, vol. 7, pp. 155–160 (1977)
Lewis, D.K.: Counterfactuals. Harvard University Press, Cambridge (1973)
Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann, San Francisco (1997)
Mazer, M.S., Lochovsky, F.H.: Analyzing distributed commitment by reasoning about knowledge. Technical Report CRL 90/10, DEC-CRL (1990)
Milner, R.: Communication and Concurrency. Prentice Hall, Hertfordshire (1989)
Moses, Y., Roth, G.: On reliable message diffusion. In: Proc. 8th ACM Symp. on Principles of Distributed Computing, pp. 119–128 (1989)
Peterson, G.L.: An O(nlogn) unidirectional distributed algorithm for the circular extrema problem. ACM Trans. on Programming Languages and Systems 4(4), 758–762 (1982)
Stalnaker, R.C.: A semantic analysis of conditional logic. In: Rescher, N. (ed.) Studies in Logical Theory, pp. 98–112. Oxford University Press, Oxford (1968)
Stulp, F., Verbrugge, R.: A knowledge-based algorithm for the Internet protocol (TCP). Bulletin of Economic Research 54(1), 69–94 (2002)
Yamashita, M., Kameda, T.: Computing on anonymous networks. I. Characterizing the solvable cases. IEEE Trans. on Parallel and Distributed Systems 7(1), 69–89 (1996)
Yamashita, M., Kameda, T.: Leader election problem on networks in which processor identity numbers are not distinct. IEEE Trans. on Parallel and Distributed Systems 10(9), 878–887 (1999)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Halpern, J.Y., Petride, S. (2006). A Knowledge-Based Analysis of Global Function Computation. In: Dolev, S. (eds) Distributed Computing. DISC 2006. Lecture Notes in Computer Science, vol 4167. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11864219_10
Download citation
DOI: https://doi.org/10.1007/11864219_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-44624-8
Online ISBN: 978-3-540-44627-9
eBook Packages: Computer ScienceComputer Science (R0)