In this paper we present an extension of logic programming (LP) that is sui
table not only for the "rational" component of a single agent but also for
the "reactive" component and that can encompass multi-agent systems. We mod
ify an earlier abductive proof procedure and embed it within an agent cycle
. The proof procedure incorporates abduction, definitions and integrity con
straints within a dynamic environment, where changes can be observed as inp
uts. The definitions allow rational planning behaviour and the integrity co
nstraints allow reactive, condition-action type behaviour. The agent cycle
provides a resource-bounded mechanism that allows the agent's thinking to b
e interrupted for the agent to record and assimilate observations as input
and execute actions as output, before resuming further thinking. We argue t
hat these extensions of LP, accommodating multi-theories embedded in a shar
ed environment, provide the necessary multi-agent functionality. We argue a
lso that our work extends Shoham's Agent0 and the BDI architecture.