Animal Taxonomy
Defaults and exceptions over a hierarchy.
Why it's here. Tweety is the canonical test of defeasible reasoning, and it carries at once what a real policy carries. It builds a small ontology (animals, the kinds beneath them, the individuals beneath those), so classification is hierarchical, and it runs defaults at more than one level of it: animals do not fly; birds, more specifically, do. It then defeats the bird default two distinct ways: a strong exception that asserts the opposite (a penguin does not fly), and a weak one that merely withdraws the presumption (an injured bird, left undetermined). That two-kinds-of-exception difference is the first thing outsiders miss, and it is no technicality: an explicit "no" is not the absence of a "yes," which in a regulation is the difference between a prohibition and a silence. The model is also elaboration tolerant: a new kind, exception, or individual costs nothing already written.
And why it matters now. This is the cleanest line between the methodology and the knowledge graphs in fashion today. A graph holds the taxonomy and the facts; what its standard, monotonic form cannot hold is the defeasible part. "Birds normally fly, a penguin is the exception" is not a default in a classical ontology, it is a contradiction, which is why the penguin is the very example the description-logic literature reaches for to mark the gap. Closing it means extending the graph with the non-monotonic machinery this methodology is founded on.
"Animal" is a type. "Bird" is a type of animal. "Cat" is a type of animal. "Penguin" is a type of bird. "Parrot" is a type of bird. [@in] An animal may be "injured". [@out] An animal may be "able-to-fly". [@ref: D.animal-flight] Normally, an animal is not able-to-fly. Birds are an exception to [D.animal-flight]. [@ref: D.bird-flight] Normally, a bird X is able-to-fly. Penguins are not able-to-fly. A bird X is an exception to [D.bird-flight] if X is injured. "Sylvester" is a cat. "Sam" is a bird. "Polly" is a parrot. "Tweety" is a penguin. "Rocky" is a parrot. Rocky is injured.
Result. Sam and Polly fly: the bird default fires. Sylvester the cat does not — the general "animals don't fly" default reaches him. Tweety the penguin does not either, a definite "no." Rocky, an injured parrot, is neither: the default is withdrawn, and nothing asserts he cannot fly.
