B7. DEFEASIBILITY So far, all of the axioms we have written are always true. It is always the case, for example, that two sets with exactly the same members are equal. But we cannot get very far in axiomatizing commonsense knowledge if we insist on this everywhere. Most of our everyday knowledge is only approximately correct. It is defeasible, in that we can draw a conclusion with it and later have the conclusion be defeated by new, more precise information. The classic example is the knowledge we have that birds fly. (forall (x) (if (bird x)(fly x))) (1) When we hear that Tweety is a bird, we conclude that Tweety can fly. But later we may learn that Tweety is an emu. In that case, Tweety doesn't fly. Our knowledge that birds fly is only defeasible. This is not to say it is useless. It just means that we need to be somewhat more careful in stating and using the knowledge. In logic, the technical term for this property is "nonmonotonic". Classical logic is "monotonic" in the sense that once we conclude something, nothing we learn subsequently can change that conclusion. Commonsense knowledge is nonmonotonic. One way to deal with this problem is to add another proposition to the antecedent of implications. (forall (x) (2) (if (and (bird x)(etc1 x)) (fly x))) This says that if x is a bird and x has other unspecified properties encoded as "etc1", then x can fly. There are a number of ways the "etc" predicates can enter into the inference process. In weighted abduction (Hobbs et al., 1993), one tries to prove something by standard deductive means, but one can, at cost, make assumptions where the knowledge is lacking. The preferred proof is then the lowest-cost proof, for example, the one that minimizes the number of assumptions. Hobbs et al. (1993) describe various criteria for determining costs and choosing the best proof. In the bird example, we want to know whether x flies. All we know is that x is a bird. So we assume "(etc1 x)", and conclude that x can fly. Suppose later we learn that x is an emu, and we have the knowledge that emus are birds but don't fly. (forall (x) (if (emu x)(bird x))) (3) (forall (x) (if (emu x)(not (fly x)))) (4) There is no contradiction in the knowledge base consisting of these three axioms. If x is an emu, then "(etc1 x)" is not true, and we can't assume it. The best known version of this way of representing defeasible knowledge is McCarthy's (1980) circumscriptive logic. Rather than using "etc", he uses "ab" for "abnormal". So Axiom (2) becomes (forall (x) (5) (if (and (bird x)(not (ab1 x))) (fly x))) If x is a bird and x is not abnormal in a way specific to the predicate "ab1", then x can fly. We might further know that being an emu is one way of being abnormal in this respect. (forall (x) (if (emu x)(ab1 x))) (6) In the framework of Hobbs et al. (1993), there are no axioms that allow one to conclude explicitly that the "etc" predicates are true or false. They are simply carriers for the costs of using defeasible knowledge. In circumscriptive logic one may use axioms like (6) to state explicit properties that make something abnormal in some respect. (In fact, (6) follows from (5), (3) and (4).) We have subscripted the "etc" and "ab" predicates because the extra conditions they encode are different for every axiom. It is also defeasibly true that birds have two legs. (forall (x) (7) (if (and (bird x)(etc2 x)) (twoLegged x))) But the extra conditions under which a bird can fly and the extra conditions under which a bird has two legs are different. We can't have a single "etc" or "ab" predicate do all the work. There has to be a separate one for every axiom. It may be that there are inferential relations among the defeasibility predicates. For example, defeasibly all birds have feathers. (forall (x) (8) (if (and (bird x)(etc3 x)) (feathered x))) This is only defeasible because a plucked chicken lacks feathers. Suppose it is the case that a bird without feathers cannot fly. We could then state an explicit relation among the "etc" predicates, as follows: (forall (x) (if (etc1 x)(etc3 x))) (9) That is, if the extra conditions that enable a bird to fly are true, then so are the extra conditions that make it feathered. But in fact this could be derived from axioms (2) and (8) and the following axiom: (forall (x) (if (fly x)(feathered x))) (10) In our treatment of defeasible knowledge we will not explicitly relate "etc" conditions to each other. Whatever relations there are will only be derivable from other axioms. The arguments of the "etc" propositions need to include all the universally quantied variables that scope over the "etc" predication. For example, consider the defeasible knowledge that mothers love their children. (forall (x y)(if (and (mother x y)(etc4 x y))(love x y))) (11) The unspecified conditions "etc4" which make the conclusion certainly true could be properties of the mother alone or the child alone, or a relation between the two of them. Now for an abbreviation: We could introduce a different "etc" predicate into every defeasible axiom. For example, we might index them with the number of the chapter and the number of the axiom within that chapter. So for example, a defeasible axiom (13) in Chapter B7 would have the predicate "etc.B7.13". The arguments of the "etc" predicate in a Horn clause or other axiom in implicative normal form would in general have to be all the univerally quantified variables that scope over the predication. In principle, the extra conditions they encode could depend on any of these variables. Thus, a defeasible axiom might look like the following: (forall (x y) (12) (if (and (p x y)(etc.B7.13 x y)) (exists (z) (q x z)))) But all this notation is redundant. The index can be recovered from the chapter and example numbers, and the arguments can be recovered from the universal quantifier. Moreover, the notation is useless for the reader, since this particular "etc" predicate will appear in no other axiom. Its sole function is to indicate the defeasibility of the one axiom it appears in. Thus, we will abbreviate all "etc" predications to simply "(etc)". Axiom (12) would be abbreviated to (forall (x y) (13) (if (and (p x y)(etc)) (exists (z) (q x z)))) It is straightforward to recover the real meaning of this expression. A caveat is in order, however. The purpose of this abbreviation is to lighten the visual load on the reader from axioms that are often already quite burdensome. The axioms with "(etc)" cannot simply be given to a theorem-prover as is; it might assume "(etc)" in one axiom and then apply it in another. The abbreviations have to be expanded out before the axiom is given to the reasoning engine. Notation Introduced in this Chapter (etc): An abbreviation for "(etc x y ...)", where is unique to the axiom in which the "(etc)" appears and "x y ..." are the universally quantified variables that scope over the "(etc)". References: Hobbs, Jerry R., Mark Stickel, Douglas Appelt, and Paul Martin, 1993. Interpretation as Abduction'', {\it Artificial Intelligence}, Vol. 63, Nos. 1-2, pp. 69-142. McCarthy, John, 1980. Circumscription: A Form of Nonmonotonic Reasoning'', {\it Artificial Intelligence}, Vol. 13, pp. 27-39. Reprinted in M. Ginsberg, ed., {\it Readings in Nonmonotonic Reasoning}, pp. 145-152, Morgan Kaufmann Publishers, Inc., Los Altos, California.