Date of this Version
Distributed logic programming languages, that allow both
facts and programs to be distributed among different nodes
in a network, have been recently proposed and used to declaratively
program a wide-range of distributed systems, such as
network protocols and multi-agent systems. However, the distributed
nature of the underlying systems poses serious challenges
to developing efficient and correct algorithms for evaluating
these programs. This paper proposes an efficient asynchronous
algorithm to compute incrementally the changes to
the states in response to insertions and deletions of base facts.
Our algorithm is formally proven to be correct in the presence
of message reordering in the system. To our knowledge, this
is the first formal proof of correctness for such an algorithm.
Date Posted: 08 February 2011