Hostname: page-component-8448b6f56d-dnltx Total loading time: 0 Render date: 2024-04-18T12:20:38.927Z Has data issue: false hasContentIssue false

A declarative approach to distributed computing: Specification, execution and analysis

Published online by Cambridge University Press:  25 September 2013

JIEFEI MA
Affiliation:
Imperial College London (e-mail: j.ma@imperial.ac.uk)
FRANCK LE
Affiliation:
IBM Waston Laboratory, US (e-mail: fle@us.ibm.com)
DAVID WOOD
Affiliation:
IBM Waston Laboratory, US (e-mail: dawood@us.ibm.com)
ALESSANDRA RUSSO
Affiliation:
Imperial College London (e-mail: a.russo@imperial.ac.uk)
JORGE LOBO
Affiliation:
ICREA - Universitat Pompeu Fabra (e-mail: jorge.lobo@upf.edu)

Abstract

There is an increasing interest in using logic programming to specify and implement distributed algorithms, including a variety of network applications. These are applications where data and computation are distributed among several devices and where, in principle, all the devices can exchange data and share the computational results of the group. In this paper we propose a declarative approach to distributed computing whereby distributed algorithms and communication models can be (i) specified as action theories of fluents and actions; (ii) executed as collections of distributed state machines, where devices are abstracted as (input/output) automata that can exchange messages; and (iii) analysed using existing results on connecting causal theories and Answer Set Programming. Results on the application of our approach to different classes of network protocols are also presented.

Type
Regular Papers
Copyright
Copyright © 2013 [JIEFEI MA, FRANCK LE, DAVID WOOD, ALESSANDRA RUSSO, and JORGE LOBO] 

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

Abiteboul, S., Bienvenu, M., Galland, A. and Rousset, M.-C. 2011. Distributed datalog revisited. In Datalog reloaded, Springer, 252261.Google Scholar
Alvaro, P., Ameloot, T. J., Hellerstein, J. M., Marczak, W. R. and den Bussche, J. V. 2011. A declarative semantics for dedalus. Tech. Rep. UCB/EECS-2011-120, UC Berkley.Google Scholar
Baral, C. 2003. Knowledge Representation, Reasoning and Declarative Problem Solving. Cambridge University Press.CrossRefGoogle Scholar
Baral, C., Gelfond, G., Son, T. C. and Pontelli, E. 2010. Using answer set programming to model multi-agent scenarios involving agents' knowledge about other's knowledge. In AAMAS, 259–266.Google Scholar
Chandy, K. M., Go, B., Mitra, S., Pilotto, C. and White, J. 2011. Verification of distributed systems with local–global predicates. Formal Aspects of Computing 23, 5, 649679.CrossRefGoogle Scholar
Gelfond, M. and Lifschitz, V. 1998. Action languages. Electronic Transactions on Artificial Intelligence 2, 193210.Google Scholar
Giunchiglia, E., Lee, J., Lifschitz, V., McCain, N. and Turner, H. 2004. Nonmonotonic causal theories. Artificial Intelligence 153, 1, 49104.Google Scholar
Grumbach, S. and Wang, F. 2010. Netlog, a rule-based language for distributed programming. In PADL, 88–103.Google Scholar
Krennwallner, T. and Gelfond, M. 2011. Promoting modular nonmonotonic logic programs. In Technical Communications of the 27th International Conference on Logic Programming (ICLP'11), Vol. 11. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, 274279.Google Scholar
Lobo, J., Ma, J., Russo, A. and Le, F. 2012. Declarative distributed computing. In Correct Reasoning, 454–470.Google Scholar
Lobo, J., Wood, D., Verma, D. C. and Calo, S. B. 2012. Distributed state machines: A declarative framework for the management of distributed systems. In CNSM, 224–228.Google Scholar
Loo, B. T., Condie, T., Garofalakis, M., Gay, D. E., Hellerstein, J. M., Maniatis, P., Ramakrishnan, R., Roscoe, T. and Stoica, I. 2009. Declarative networking. CACM 52, 11, 8795.CrossRefGoogle Scholar
Lopes, N. P., Navarro, J. A., Rybalchenko, A. and Singh, A. 2010. Applying prolog to develop distributed systems. Theory and Practice of Logic Programming 10, 4–6 (July), 691707.CrossRefGoogle Scholar
Lynch, N. A. 1996. Distributed Algorithms. Morgan Kaufmann.Google Scholar
Mao, Y. 2009. On the declarativity of declarative networking. Operating Systems Review 43, 4, 1924.Google Scholar
Marczak, W. R., Huang, S. S., Bravenboer, M., Sherr, M., Loo, B. T. and Aref, M. 2010. Secureblox: customizable secure distributed data processing. In Proceedings of the 2010 International Conference on Management of Data. ACM, 723734.Google Scholar
McKeown, N., Anderson, T., Balakrishnan, H., Parulkar, G., Peterson, L., Rexford, J., Shenker, S. and Turner, J. 2008. Openflow: Enabling innovation in campus networks. SIGCOMM Computer Communication Review 38, 2 (March), 6974.Google Scholar
Musuvathi, M. and Engler, D. R. 2004. Model checking large network protocol implementations. In NSDI, 440–441.Google Scholar
Pérez, J. A. N. and Rybalchenko, A. 2009. Operational semantics for declarative networking. In PADL, 76–90.Google Scholar
Pontelli, E., Son, T. C., Baral, C. and Gelfond, G. 2012. Answer set programming and planning with knowledge and world-altering actions in multiple agent domains. In Correct Reasoning, 509–526.Google Scholar
Sobrinho, J. L. and Griffin, T. G. 2010. Routing in equilibrium. In Mathematical Theory of Networks and System.Google Scholar
Turner, H. 1999. A logic of universal causation. Artificial Intelligence 113, 1–2, 87123.Google Scholar
Wang, A., Talcott, C., Gurney, A. J. T., Loo, B. T. and Scedrov, A. 2012. Reduction-based formal analysis of bgp instances. In Proceedings of the 18th international conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS'12), Springer-Verlag, Berlin, Heidelberg, 283298.Google Scholar
Zhang, L., Estrin, D., Burke, J., Jacobson, V., Thornton, J. D., Smetters, D. K., Zhang, B., Tsudik, G., Massey, D., Papadopoulos, C.et al., 2010. Named data networking (ndn) project. Relatório Técnico NDN-0001, Xerox Palo Alto Research Center-PARC.Google Scholar
Zhou, W., Fei, Q., Sun, S., Tao, T., Haeberlen, A., Ives, Z., Loo, B. T. and Sherr, M. 2011. Nettrails: a declarative platform for maintaining and querying provenance in distributed systems. In Proceedings of the 2011 international conference on Management of data, ACM, 13231326.Google Scholar

Ma supplementary material

Ma supplementary material

Download Ma supplementary material(Audio)
Audio 251.9 KB