The paper introduces a semantics for the language of classical first order logic supplemented with the additional operators ⊓ and ⨅. This semantics understands formulas as tasks. An agent (say, a machine or a robot), working as a slave for its master (say, the user or the environment), can carry out the task α⊓β if it can carry out any one of the two tasks α, β , depending on which of them was requested by the master; similarly, it can carry out ⨅xα(x) if it can carry out α( x) for any particular value for x selected by the master; an agent can carry out α→ β if it can carry out β as long as it has, as a slave (resource), an agent who carries out α; finally, carrying out P, where P is an atomic formula, simply means making P true; in particular, ⊥ is a task that no agent can carry out. When restricted to the language of classical logic, the meaning of formulas is isomorphic to their classical meaning, which makes our semantics a conservative extension of classical semantics. This semantics can claim to be a formalization of the resource philosophy associated with linear logic, if resources are understood as agents carrying out tasks. The classical operators of our language correspond to the multiplicative operators of linear logic, while ⊓ and ⨅ correspond to the additive conjunction and universal quantifier, respectively. Our formalism may also have a potential to be used in AI as an alternative logic of planning and action. Its main appeal is that it is immune to the frame problem and the knowledge preconditions problem. The paper axiomatically defines a logic L in the above language and proves its soundness and completeness with respect to the task semantics in the following intuitive sense: L ⊢ α iff α can be carried out by an agent who has nothing but its intelligence (i.e. no physical resources or external sources of information) for carrying out tasks. This logic is shown to be semidecidable in the full language and decidable when the classical quantifier (but not ⨅) is forbidden in it.
Read full abstract