AI Magazine Volume 11 Number 3 (1990) (© AAAI) Articles

The majority of work After explicating the need for a large common- We have come a in knowledge repre- sense spanning human consen- long way in this . . . an sentation has dealt sus knowledge, we report on many of the lessons time, and this article aversion to with the technicali- learned over the first five years of attempting its presents some of the ties of relating predi- construction. We have come a long way in terms lessons learned and a addressing cate calculus to of methodology, representation language, tech- description of where the problems niques for efficient inferencing, the ontology of other formalisms we are and briefly the knowledge base, and the environment and that arise in and with the details infrastructure in which the knowledge base is discusses our plans of various schemes being built. We describe the evolution of for the coming five actually for default - and its current state and close with a look at our years. We chose to representing ing. There has almost plans and expectations for the coming five years, focus on technical been an aversion to including an argument for how and why the issues in representa- large bodies addressing the prob- project might conclude at the end of this time. tion, inference, and of knowledge lems that arise in ontology rather than actually represent- infrastructure issues with content. ing large bodies of knowledge with content. such as user interfaces, the training of knowl- However, deep, important issues must be edge enterers, or existing collaborations and addressed if we are to ever have a large intelli- applications of Cyc. gent knowledge-based program: What onto- logical categories would make up an adequate The Evolution of the set for carving up the universe? How are they related? What are the important facts and Cyc Methodology most humans today know about For two decades, AI research has been polar- solid objects? And so on. In short, we must ized into (roughly corre- bite the bullet. sponding to theoretical versus experimental We don’t believe there is any shortcut to approaches). After an initial strongly scruffy being intelligent, any yet-to-be-discovered approach, we seem to have settled on a Maxwell’s equations of thought, any AI Risc middle ground that combines the insights architecture that will yield vast amounts of and power of each. problem-solving power. Although issues such On the one hand, we realized that a number as architecture are important, no powerful of mistakes made in the project’s initial years formalism can obviate the need for a lot of would have been avoided by a more formal knowledge. approach (especially in regard to the con- By knowledge, we don’t just mean dry, struction of the representation language). We almanac-like or highly domain-specific facts. also realized that had a lot to con- Rather, most of what we need to know to get tribute, especially when it came to deciding by in the real world is prescientific (knowl- on issues of ontology (Quine 1969). edge that is too commonsensical to be includ- On the other hand, however, there are a ed in reference books; for example, animals number of areas where we found the empiri- live for a single solid interval of time, nothing cal approach more fruitful. The areas are typi- can be in two places at once, animals don’t cally still open research issues for the formalists like pain), dynamic (scripts and rules of thumb or have not even been addressed by them, for for solving problems) and metaknowledge example, codifying the most fundamental (how to fill in gaps in the knowledge base, types of goals that people have. how to keep it organized, how to monitor Therefore, our approach is to largely carry and switch among problem-solving methods, out empirical research and be driven by look- and so on). ing at lots of examples but to keep this work Perhaps the hardest truth to face, one that supported on a strong theoretical foundation. AI has been trying to wriggle out of for 34 Further, we have been driven to adopt a kind years, is that there is probably no elegant, of tool-kit orientation: Assemble a collection effortless way to obtain this immense knowl- of partial solutions to the various difficult edge base. Rather, the bulk of the effort must problems Cyc has to handle, and add new (at least initially) be manual entry of assertion tools as required. That is, for a number of after assertion. problems (time, causality, inference, user Half a decade ago, we introduced (Lenat, interface, and so on), there aren’t any known Prakash, and Shepherd 1986) our research general-purpose, simple, efficient solutions, plans for Cyc, a decade-long, two person-cen- but we can make do with a set of modules tury effort we had recently begun at MCC to that enable us to easily handle the most manually construct such a knowledge base. common cases.

Copyright ©1990 AAAI. All rights reserved. 0738-4602/90/$4.00

FALL 1990 33 Articles

The bulk of the effort is currently devoted kept modifying and tweaking such mecha- to identifying, formalizing, and entering nisms, and often, this method forced us to go microtheories of various topics (such as shop- back and redo parts of the knowledge base so ping, containers, emotions). We follow a pro- that they corresponded to the new way the cess that begins with a statement, in English, worked. As the size of the of the microtheory. On the way to our goal, knowledge base increased, this process an axiomatization of the microtheory, we became intolerable. We came to realize that identify and make precise those Cyc concepts having a clean semantics for the knowledge necessary to state the knowledge in axiomatic base was vital, declaratively expressing the form. To test that the topic has been ade- meaning of inheritance, TheSetOf, default quately covered, stories that deal with the rules, automatic classification, and so on, so topic are represented in Cyc; we then pose that we wouldn’t have to change the knowl- questions that any reader ought to be able to edge base when we altered the implementa- answer after having read the story. tion of one of the mechanisms. One of the unfortunate myths about Cyc is As late as 1987, the only inferencing in Cyc that its aim is to be a sort of electronic ency- was done using these few mechanisms: inher- clopedia. We hope that this article lays this itance along instances (IS-A) links, rigid misconception to rest. If anything, Cyc is the toCompute definitions of one slot in terms of complement of an encyclopedia. The aim is others plus the running of demons (opaque that one day Cyc ought to contain enough lumps of Lisp code) and –like commonsense knowledge to support natural production rules. The results were inefficien- language understanding capabilities that cies (because of the overuse of the most gen- enable it to read through and assimilate any eral mechanisms), abstraction breaking (often encyclopedia article, that is, to be able to resorting to raw Lisp code escapes), and inad- answer the sorts of questions that you or I equacies (for example, given a rule “If A Then could after having just read any article, ques- B,” and ¬B, Cyc couldn’t conclude ¬A.) tions that neither you nor I nor Cyc could be For efficiency’s sake, we developed dozens expected to answer beforehand. of specialized inference procedures, with spe- Our hope and expectation is that around cial truth maintenance system–related (TMS- the mid-1990s, we can transition more and related) bookkeeping facilities for each (Doyle more from manual entry of assertions to 1987). Then, to recoup usability, we devel- (semi-) automated entry by reading online oped a mechanical translator so that one can texts; the role of humans in the project now input general predicate calculus–like would transition from the brain surgeons to assertions, and Cyc can convert them from tutors, answering Cyc’s questions about the this epistemological level into the form difficult sentences and passages. This radical required by these efficient -level, spe- change is what it means for Cyc to have a cial-purpose mechanisms (see The Current decade-long projected lifespan. State of the Representation Language). Originally, Cyc handled defaults in an ad hoc and frequently inadequate way. In the The Evolution of the last two years, we have moved to a powerful Representation Language and principled way of handling them. As we discuss in the section Epistemological Level CycL is the language in which the Cyc knowl- and Default Reasoning, Cyc constructs and edge base is encoded. In 1984, our representa- compares arguments for and against a propo- tion was little more than frames. Although a sition, using explicit rules to decide when an significant fraction of knowledge can be con- argument is invalid or when one argument is veniently handled using just frames, this to be preferred over another. approach soon proved awkward or downright Early on, we allowed each assertion in the inadequate for expressing various assertions knowledge base to have a numeric certainty we wanted to make: disjunctions, inequalities, factor (cf), but this approach led to its own existentially quantified statements, metalevel set of increasingly severe difficulties. For propositions about sentences, and so on. At example, one knowledge enterer might assert least occasionally, therefore, we required a A and assert B and assign them cfs of 95 and framework of greater expressive power. We 94 (on a 0–100 scale). There wasn’t statistical were thus led to embed the frame system in a data to support these numbers; the knowl- predicate calculus–like constraint language. edge enterer just meant to express that both Moreover, there were a number of down- A and B were likely, and A was slightly more right ad hoc aspects of the 1984 frame lan- likely than B. The problem is that some other guage, such as how inheritance worked. We knowledge enterer might assert C and assert

34 AI MAGAZINE Articles

D, and, respectively, give them cfs of 94.4 and 94.6. Certainly, neither person intended to Two of the wish list entries are at odds . . . tell Cyc that A is more certain than C or that having a clean and simple semantics and D is more certain than B, but this is exactly what they were doing. These problems led us providing speedy inference. to go back to a simple nonnumeric scheme in which A, B, C, and D would all simply be true (nonmonotonically, that is, true by default), and in addition, there would be two explicit tions) does P belong? assertions: (moreLikelyThan A B) and (more- Given this wish list, we could summarize LikelyThan C D). the major changes in CycL over the past five We conclude this section by listing our years as follows: We started with a frame lan- desiderata for the representation language in guage whose emphasis was more on issues which to build our large knowledge base. The such as the data structures used, indexing, next section goes on to describe the current and interface. We have since realized the state of CycL, the language that strives toward importance of a declarative semantics for the these criteria. Our point here is that this list language, the need for expressive power, and bears little resemblance to what we expected the importance of making a clear distinction the language to be like five years ago: between what knowledge the knowledge base First, the language should have a clear (and contains and how the knowledge base is hopefully simple) semantics. The semantics implemented. should be declarative for two : to facil- itate communication with, and use by, many different problem solvers, be they human or The Current State of Cyc’s machine and, as mentioned previously, to Representation Language prevent having to discard or redo the knowl- The last several paragraphs considered some edge base when the inference mechanisms of the issues that heavily influenced the change. design of this language. This section presents Second, it should provide certain inferential the result of our striving to satisfy this wish capabilities (including verifying conjectures, list.2 finding bindings for variables that make some statement true, planning) and provide them Epistemological Level and efficiently. Why? Only by actually building applications can the knowledge base be truly Default Reasoning exercised and, ultimately, validated. Two of the wish list entries are at odds with Third, it should provide some scheme for each other: having a clean and simple seman- expressing and reasoning with default knowl- tics and providing speedy inference. To edge. Almost all the knowledge in Cyc is improve inferencing abilities, we want to defeasible. Only about 5 percent is monoton- include special-purpose representations and ic, and of this amount, only about 1 percent inference routines, procedural attachments, is definitional (such as the function cousins and so on. However, these make it harder to being defined as cousins(x) = children(sib- provide a simple semantics. Also, although it lings(parents(x))). is reasonable to expect the semantics of CycL Fourth, it should have the expressiveness of to remain unchanged, it is likely that new all first-order predicate calculus (FOPC) with constructs are going to be incrementally equality (Moore 1986). It should also be able added to improve CycL’s inferencing. The to handle (nested) propositional attitudes addition of such special-purpose constructs (McCarthy 1986a) (such as beliefs, goals, pur- (templates for classification, inheritance, spe- pose, dreads). It should have facilities for cial-purpose inference mechanisms, and so operations such as reification (McCarthy on) is likely to prove bothersome to other 1986b) and reflection (Weyhrauch 1986). programs that use Cyc, for example, programs Each assertion P (fact, rule, and so on) can that were written before the new constructs have various metalevel assertions about it even existed and, hence, couldn’t take advan- that need to be made; for example, who tage of them. asserted this and when, what arguments sup- Therefore, we would like users of Cyc (both port P and what arguments counter it, what humans and application programs) to interact arguments does P participate in, what asser- with the system at an epistemological level tions are analogous to P, and in what ways and not a heuristic level. These terms and the and to which models (levels of granularity or distinction between them are used here in the other clumpings of mutually consistent asser- sense of McCarthy and Hayes (1987).

FALL 1990 35 Articles

Figure 1. Cyc’s Knowledge Base Is Redundantly Expressed at Both an Epistemological Level and a Heuristic Level. A user (human or application program) will usually communicate with Cyc at the epistemological level, and their utterances are translated by the tell-ask (TA) interface into heuristic-level propositions. The heuristic level consists of several modules for generating and comparing arguments for and against a given proposition.

These observations lead to the conclusion some abstract conceptual level. For example, that the knowledge base should be construct- one could eliminate the entire heuristic level, ed at two levels, which is exactly what we replace it with a general-purpose problem have done. The Cyc knowledge base itself, solver, and Cyc would merely slow down therefore, exists redundantly at the epistemo- (that is, the Cyc knowledge base would logical level and at the heuristic level, and an remain unchanged, the same conclusions external program (or human user) can inter- would be reachable, the same problems solv- act with CycL at either of these levels. The able, and so on, but at [presumably] a much epistemological level uses a language that is slower speed). One way in which some of our essentially FOPC, with a slightly different collaborators choose to use Cyc is at arms’ syntax and augmentations for reification and length, accepting only epistemological-level set construction.3 It gives an account of the expressions from the Cyc knowledge base knowledge base in a form that has a simple and using their own inference engines on semantics and, therefore, is easy to communi- them. cate in. In contrast, the heuristic level uses a The epistemological level is based on a lan- variety of special-purpose representations and guage called the Cyc constraint language, procedures for speedy inference. The heuristic which, as we remarked earlier, is essentially level is the language of choice whenever any FOPC with equality, with augmentations for inference needs to be done. defaults and reification. It also allows some There is a facility for automatically translat- amount of reflection of the problem solver ing sentences from the epistemological level into the language and allows for predicates into the most appropriate representations in such as justifies that relates a sentence Q to the heuristic level, and vice versa; it is called other sentences P1, P2, . . . that a problem the tell-ask (TA) interface (Derthick 1990) solver used to deduce it. The Cyc constraint (figure 1). Therefore, one can type epistemo- language also uses a number of modals, logical-level expressions (that is, in some including beliefs, desires, and goals, whose form like FOPC) to TA, and they are convert- semantics are defined by using the ability to ed into the most efficient heuristic-level rep- reify propositions. resentation. The only nonmonotonic constructs used Both the epistemological level and the are the closed-world assumption (CWA) and heuristic level are real parts of CycL. The epis- the unique names assumption. CWA, in par- temological level, in particular, is not just ticular, is used to provide the language with

36 AI MAGAZINE Articles nonmonotonicity, and the default reasoning abilities were designed using CWA and the The Cyc knowledge base itself . . . exists notion of arguments. The next subsection redundantly at the epistemological level gives a brief description of this, that is, how and at the heuristic level . . . default reasoning is done in Cyc; details can be found in Guha (1990b).

Defaults The syntactic structure of defaults is identical to that of defaults in (McCarthy (argumentFor(‘p, a) ∧ ¬invalidArg(a) 1987a). Thus, we represent the statement ∧ ¬(∃a1) (argumentFor(‘¬p, a1) ∧ ¬preferred(a,a1) “birds usually fly” as follows:4 ∧ ¬invalidArg(a1))) ⊃ True(‘p) . isa(x Bird) ∧ ¬ab1(x) ⊃ flies(x) . Additional axioms are used to specify when Intuitively, we want to weaken the mono- an argument is invalid (for example, tonic statement “all birds fly” to get the default (True(‘¬p) ∧ inArgument(‘p,a)) ⊃ invalidArg(a)) “birds usually fly,” and we use the ab1 predi- and axioms that can conclude that one argu- cate to do so. To derive conclusions from this ment is preferred over another (a few of these axiom, we use the concept of arguments and are given later). These axioms form the core have an argumentation axiom instead of the of the real default reasoning. circumscription axiom. The intuition behind It is usually not possible to prove that a this approach is as follows: better counterargument to some proposition We first axiomatize the concept of an argu- does not exist or prove that some argument is ment as an extension of the concept of a not invalid. To deal with this problem, CWA proof. In addition to the sentences that might is made for the predicates argumentFor and appear in a proof, an argument might also invalidArg, and this closed-world assumption contain a class of sentences that have been is what provides the required nonmonotonic- labeled as assumptions (for example, sentences ity to the language. This axiom uses the truth of the form ¬ab1(Tweety) are assumptions). predicate True, and to avoid the possibility of We use the ability to reify sentences to do this paradoxes, we (following Tarski) allow this labeling. predicate to differ from the actual truth value If there is an argument for a sentence, we of the sentence for certain sentences (those would like to believe in the truth of the sen- that are likely to be paradoxical). In other tence. However, because arguments are a words, the following is not an axiom schema weaker notion than proofs, it is possible to in our knowledge base: come up with invalid arguments; that is, True(‘p) ⇔ p. those that try to make assumptions that are The preference axioms and the axioms that known to be false. It is okay for an argument define the predicates argumentFor and invali- to make assumptions, but if we know that an dArg are not part of any metatheory; they are assumption made by an argument is false, regular axioms of the knowledge base. The then we ought to know enough to ignore this salient aspect of our approach to doing default argument. We explicitly restrict our attention reasoning is that most of the work is done to arguments that are not yet known to be using axioms explicit in the knowledge base invalid. The details of how arguments are and not wired into the . This approach generated in practice, and so on, are discussed provides us greater flexibility and control and in the section The Heuristic Level: Efficient makes it easier to fix problems if inadequacies Inferencing in Cyc. are detected. Adding and removing axioms It is also possible to come up with argu- from the knowledge base is strongly prefer- ments for both P and ¬P (and, indeed, to have able to changing the logic, especially when a multiple distinct arguments for each). Com- massive knowledge base already exists and bining arguments is tricky and is handled as assumes a certain logic. follows: Given a set of arguments for P and We currently use a number of different for ¬P, Cyc compares these arguments and criteria for comparing arguments: prefer decides what to add to the knowledge inferences with shorter inferential distance base—P, ¬P , or neither. We do this compari- (Touretzky 1987), prefer causal explanations son by making arguments first-class objects in (Lifschitz 1987), prefer constructive argu- the CycL language and using axioms in the ments over nonconstructive ones, and so on. Cyc knowledge base that capture our intu- We are also trying to construct a taxonomy of itions of various aspects of default reasoning. standard types of arguments that capture dif- The argumentation axiom, which captures ferent dialectic patterns. For example, there is the gist of this approach, is as follows:(∀a) the concept of a narration (one kind of argu-

FALL 1990 37 Articles

ment) that corresponds to giving a sequence Statements about the world (as opposed to of events that lead to some assertion (from statements about a particular microtheory) some starting point) as an argument for why have to be within some microtheory or other. this assertion might be true. One distinguished microtheory corresponds What aspects of our default reasoning to the most expressive microtheory (MEM). scheme need more work? Surprisingly, we In this article, as a notational convention would not include the logical formalism unless otherwise mentioned, if no microtheo- used. However, we would include issues such ry is explicitly associated with a statement, as what are reasonable preferences and dialec- the microtheory in which this statement is tic patterns. Currently, we are actively true is taken to be MEM. Most of the discus- engaged in this research (Guha 1990b). sion of the ontology in this article is of that in MEM, although the last subsection of this section does discuss the role of microtheories Microtheories and the in the ontology. Here, we end our discussion of the episte- Representation Language mological level and proceed to a description One of the facilities available in CycL is the of some of the techniques used at the heuris- ability to say that a set of sentences consti- tic level to speed up inference. tutes a theory. For example, one set of sen- tences represents a naive theory of physics The Heuristic Level: Efficient (NTP). Here is a typical NTP sentence, which Inferencing in Cyc says that if something is not supported, then it falls.5 (Of course, this heuristic is not The heuristic level is meant for doing infer- always true; it fails for balloons, objects in encing. As opposed to the epistemological outer space, and so on. This theory should level, where we tried to avoid superfluous not be used when dealing with such objects.) constructs, the heuristic level incorporates a ist((∀ x ¬supported(x) ⊃ falls(x)), NTP) . host of logically superfluous mechanisms for These theories, such as NTP, are referred to improving efficiency. as microtheories (µTs). They are first-class objects in the CycL language and are usually The Functional Interface to CycL. The given descriptions related to their scope, when user can interact with Cyc at the epistemo- they should be used, and so on. This facility logical level (figure 1) using a set of functions is extremely useful in forming theories and called the functional interface. The functionality abstractions at different levels of granularity. of each of these is implemented at the heuris- In addition to avoiding the inconsistencies tic level. The functions are Assert, Unassert, that often accompany the careless merging of Deny, Justify, Ask, and Bundle. different abstractions, microtheories give us a Assert: (∑ x KB → KB): Given a sentence σ convenient formalism for using multiple rep- and a knowledge base, after Assert(σ, KB), we resentations, reasoning about when to use get a new (modified) knowledge base in which which one, and representing within a context σ is an axiom. (the microtheory could correspond to some- Unassert: (∑ x KB → KB): This function is thing like a discourse context). They also the “undo” of Assert. After Unassert(σ, KB), σ enable us to use contextual information to is not an axiom (although it might still follow simplify the statement of axioms. from axioms in the knowledge base). The description of the assumptions made Deny: (∑ x KB → KB): This operation is by the microtheory—what is left implicit, similar to but stronger than Unassert. It tries and so on—that is associated with it form its to produce a knowledge base in which the context (McCarthy 1987b). A distinction is sentence σ is neither an axiom nor a theo- made between the propositions that constitute rem. Deny is stronger than Unassert in the the microtheory (that is, the deductive clo- case where σ is currently a theorem in the sure of the axioms in the microtheory) and knowledge base—follows from axioms Assert- the context associated with it. The context is a ed into the knowledge base—but not an rich (McCarthy and Hayes 1987) object and axiom. In such a case, Unassert would do usually carries information that can be used nothing (that is, σ would still be a theorem to universalize (Quine 1969) the contextual afterwards). It is possible that after Deny, nei- representation of the microtheory. The addi- ther σ nor ¬σ is a theorem or axiom, which tion of a fact to a microtheory always contrasts with Assert(¬σ, KB), after which ¬σ changes the theory associated with it but would be an axiom. Thus, Unasserting σ is need not always change the context of the weaker than Denying it, which, in turn, is microtheory. weaker than Asserting its negation.

38 AI MAGAZINE Articles

Justify: (∑ x KB → sentences): If sentence ciently. Here, then, are the four modules that σ is true in the knowledge base, then Justify(σ, make up the structure of the heuristic level: KB) should return a minimal subset of the Argument Generator: Given a sentence σ, knowledge base from which σ can be derived. this module tries to generate an argument for Ask: (∑ x KB → truth-value bindings): Ask it. Recall from the section on default reason- is used to test the truth value of a statement ing that an argument is similar to a proof that and, if the expression contains some free vari- can include assumptions. ables, to find which variable bindings make it Argument Comparator: Given a set {Ai} of true. An optional argument (UNWANTED- arguments for and against a sentence σ, this BINDINGS) turns Ask into a generator; that is, module decides on a truth value for σ by each repeated call yields new sets of bindings. using knowledge base axioms to check each Bundle: (sequence of functional interface Ai for invalidity and decide which noninvalid statements): This facility performs a series of Ais are preferred over others. calls to the previous five functional interface Argument Retractor: When the truth value functions as one atomic macro-operation. of a sentence σ changes, this module ensures This operation is of great pragmatic benefit that truth values of other sentences that for two reasons: (1) The first few operations depend on σ are also updated. Not surprising- might violate some integrity constraints, and ly, the argument generator module is, in prac- later ones might satisfy them again. (2) The tice, tightly integrated with this module. bundling allows the heuristic level to be Contradiction Resolver: This module is smart about which assertions it has to undo. responsible for detecting and resolving con- For example, suppose we change an axiom tradictions. For example, suppose we have an from “Southerners speak with a drawl” to axiom p ⊃ q involving no abnormality literals, “Southerners over age 2 speak with a drawl.” and p is true, yet q is found to be false We make this change by issuing an Unassert (because of arguments for ¬q). This module and an Assert. Each of these two operations would notice such a contradiction and would cause about n modifications (assuming attempt to resolve it, for example, by retract- an average lifespan of 72 years and a uniform ing some weak (default) assertion that was age distribution in the population of n South- used in the argument for p. erners). However, if we Bundle the two opera- Given a sentence σ, Ask first tries to find tions, then only n/35 modifications are done arguments for it. If it can, it then tries to find rather than 2 ⋅ n. arguments against it. These arguments are The concept of a functional interface, with then compared (which can invoke preference functions such as Assert and Ask, has been axioms from the knowledge base and recursive- around in computer and AI for some ly involve calls on Ask), and the final truth time (Brachman, Fikes, and Levesque 1986). value is decided based on this comparison. We tailored it somewhat for our purposes and Note that the comparison process could fail increased its pragmatic usefulness by adding (the arguments could be incomparable), which some new constructs (such as Bundle and Jus- results in neither σ nor ¬σ being concluded. tify) and teasing apart old ones (such as The representation of default axioms at the Unassert(σ, KB) versus Deny(σ, KB) versus heuristic level is different from that at the Assert(¬σ, KB)). epistemological level. First, all the default axioms sharing the same ab literal are Default Reasoning Modules (The Struc- grouped into classes. For instance, the set of ture of the Heuristic Level). Most of the all rules whose antecedents (left-hand sides) ∧ gain in processing speed at the heuristic level contain ... ¬ab37(. . . ) . . . are grouped into comes about because of the way we imple- one class. Second, each class is labeled with ment Ask. (Much of the complexity at the the ab literal (in this case, ab37). Third, there- heuristic level arises from the need to do fore, we can strip all the ab literals from all Deny and Unassert properly, but this is the default axioms. Fourth, although the another issue [Pratt and Guha 1990].) The argument generator can ignore these labels, structure of the heuristic level is based on which increases its efficiency, the argument default reasoning. As we mentioned previous- comparator can still make use of them. How- ly, defaults are implemented in CycL by way ever, certain precautions have to be taken of an argumentation axiom. The argumenta- against the knowledge base appearing incon- tion axiom is just like any other axiom at the sistent to the argument generator (because of epistemological level. However, because it’s some default not holding.) used often, at the heuristic level, there are Although the epistemological level has only some special procedures for incorporating it two truth values (true and false), the heuristic so that certain special cases can be run effi- level uses five truth values (true, default true,

FALL 1990 39 Articles

unknown, default false, and false) to label tactic structure. Two other schemas are inheri- sentences in the knowledge base. True-false tance and automatic classification. sentences are those that are monotonically Associated with each such inference true; that is, the addition of new facts can’t schema are specialized procedures for speed- cause them to be retracted (although even ing up this sort of inferencing. For example, a monotonic axioms can later be explicitly certain amount of compilation can be done Unasserted, of course). Default true-false sen- that drastically cuts down on conjunct order- tences don’t have this property. Unknown is ing and unification at run time. Also, the used for sentences for which there are unre- stack used by Lisp itself can be used instead solved conflicting arguments (Ginsberg of using binding lists. Many of these savings 1987). The presence of five heuristic-level are similar to those obtained by the Warren truth values helps in making the TMS-related Machine–like compilation of programs bookkeeping activities more efficient. (Warren 1983). In particular, each schema A number of the statements at the episte- has specialized procedures for recognizing mological level are of the form (¬ab-literal ⊃ instances of the schema (for translating from ground-formula). These are called local defaults the epistemological level to the heuristic (and simply translate to the ground formula level), applying instances of the schema to with a truth value of default true at the derive conclusions, and performing book- heuristic level), and the heuristic level provides keeping functions such as storing justifications. special support to handle these efficiently. We have also built a facility to help a user add new inference rule schemas. That is, one specifies a new schema, and Cyc automatical- Speeding Up the Argument Generator ly generates all the code needed to efficiently Module. The bulk of Cyc’s time spent implement it—the types of specialized proce- inferencing is done by the argument genera- dures previously itemized. Currently, this tor module. A number of techniques have code generator can only handle schemas with been introduced to make the argument gen- no sentential variables, but even with this erator (and conclusion retractor) modules restriction, the code-generating facility is work more efficiently. These techniques fall extremely helpful. into three categories: highly specialized infer- ence rules, domain-specific inference mod- Domain-Specific Inference Modules. The pre- ules, and dependency analysis of the vious technique—introducing specialized knowledge base. inference mechanisms—was based purely on the syntactic structure of the axioms and had Highly Specialized Inference Rules. In the nothing to do with the domain the axioms knowledge base, a number of axioms are dealt with. However, at times, we can exploit instances of the following schema: some special properties of a set of domain- (s1 x y) ∧ (s2 x z) ⊃ (s1 z x) . specific axioms or the domain-specific use of Here is one such axiom: a set of general axioms. Some examples of (owner x y) ∧ (parts x z) ⊃ (owner z x) . such axiom clusters that Cyc currently opti- If the owner of JoesCar is Joe, and one of the mizes in this way are those related to tempo- parts of JoesCar is JoesCarsSteeringWheel, then ral reasoning and quantity arithmetic. In the it’s reasonable to conclude that the owner of case of temporal reasoning, for example, JoesCarsSteeringWheel is also Joe. Here is many tasks can be formulated as simple another example of an axiom that fits the graph-search problems over the graph whose same schema: nodes are time points and whose arcs are (lastName x y) ∧ (sonOf x z) ⊃ (lastName z y) . primitive temporal relations (before, after, and A new rule of inference, called transfers- simultaneousWith.) Through, is used at the heuristic level to In other words, a certain set of axioms exploit the common syntactic structure of about time can be compiled into a graph- axioms matching this schema. Thus, the pre- search procedure. It should be noted that vious two axioms would be represented at the although at the heuristic level, nothing more heuristic level as follows: than the program might be representing (transfersThrough owns parts) them, these axioms do still explicitly exist at (transfersThrough lastName sonOf) . the epistemological level. Currently, there are numerous such schemas, each of which has been made into a Dependency Analysis of the Knowledge Base. rule of inference, each schema corresponding Over the years, AI researchers have developed to a category of axioms with isomorphic syn- a number of stand-alone modules (for exam-

40 AI MAGAZINE Articles

Figure 2. Some of Cyc’s Collections. (a) For millenia, ontologists have derived power through judicious choice of categories and predicates. Here, were see a few of Cyc’s 5000 collections, related by genl and spec (superset and subset) links. Of course, because such arcs only depict one of Cyc’s 4000 slots, many concepts that are closely related in the knowledge base (for example, ProcessType and Process) aren’t connected in the diagram. (b) Although we make use of taxonomic clas- sification, most of the power in the knowledge base derives from the particular axioms (facts, heuristics, and so on) such as the five depicted here (drawn from naive theories of buying, consuming, and so on). Axioms typically cut across category boundaries; for example, a single assertion about mouthwash might involve human emotions, cognitive-processing limitations, buying, liquids, hygiene, and containers. (c) Here is the way we enter the first two of these axioms into Cyc. Free variables (such as buyer, agent) are assumed to be universally quantified. We previously specified a con- text, a particular microtheory, in which these are full-fledged CycL epistemological-level axioms. Cyc can then lift them, adding clauses to decontex- tualize them as necessary. (For example, owning an object is only a necessary precondition to consuming it in the context of law-abiding, calm, responsible parties in a partially capitalistic economic setting, and so on). In each case, the tell-ask interface converts these clauses into efficient CycL heuristic-leel expressions ple, TMSs) that could be used with any prob- is retracted, but the rest remain). Avoiding lem solver. To make them problem solver such situations is a traditional source of independent, their operation was usually space-time complexity in TMSs. However, a made independent of the structure of the dependency analysis of the knowledge base knowledge base on which the problem solver axioms could reveal the circumstances in was operating. However, we have found that which there could possibly be circular justifi- it is possible to obtain significant improve- cations and the set of sentences that might be ments in problem-solving efficiency by using involved in the circular justification. Having an analysis of the structure of the knowledge this information can vastly reduce the time base axioms. required to search for such circularities. For For example, consider the problem of example, it turns out that in Cyc’s current detecting purely self-justifying sequences of knowledge base, (1) only a small fraction of statements (for example, A justifies B, which the 4000 kinds of slots could possibly partici- justifies C, . . ., which justifies B, and then A pate in circular lines of reasoning and (2)

FALL 1990 41 Articles

such garbage-collectable chains are precisely the ontology can be found in Lenat and characterizable and, hence, easily recogniz- Guha (1990). able when they occur. These two knowledge Recall that the epistemological level is meant base–specific properties make the problem of for communicating the contents of Cyc inde- detecting them computationally feasible in pendent of the inferencing hacks that are used practice, even though this detection is com- for efficiency down at the heuristic level. plex and expensive in the worst case. Hence, most of our discussion of the ontolo- Although these modules are now making gy of Cyc’s knowledge base will be at the epis- strong assumptions about the structure of the temological level, not the heuristic level. representation used by the problem solver, We also mentioned that the knowledge the resultant improvements in efficiency are base is organized in different microtheories worth it (Guha and Lenat 1989a). along with information about when to use In addition to the specialized inference pro- which microtheory, the information that is cedures, Cyc has a general-purpose inference implicit in each microtheory, and so on. Dif- mechanism that is capable of a much larger ferent microtheories can use different abstrac- (but incomplete) category of inferences. This tions of time, actions, space, objects that are general inference engine is similar to a unit known about, and so on. In this section, preference resolution theorem prover, and most of our discussion is in the context of the with this inference mechanism, CycL is com- most expressive microtheory (MEM). MEM’s plete if attention is restricted to a horn subset expressiveness is a good measure of the of the knowledge base. expressiveness of the Cyc ontology as a whole. When dealing with mechanisms other than Therefore, the assertions we make have no the domain-specific inference mechanisms, a explicitly mentioned microtheory; it should depth-first iterative deepening procedure is be assumed to be MEM. In the subsection used for the search. Resource-limited reasoning Microtheories and the Ontology, we discuss is implemented by using indexical functions the need for, and the impact of, having mul- that specify various bounds on resources tiple microtheories. (such as the time available, the cutoff depth for search). Some Basic Concepts and Distinctions In addition, part of these inference mecha- nisms is represented in Cyc, which allows The ontology of Cyc is organized around the Cyc to use an agenda to perform a best first concept of categories. We also refer to them as search, using various heuristics to control the classes or collections. The categories are orga- search strategy. However, to date, the perfor- nized in a generalization-specialization hier- mance of the iterative deepening strategy archy (a directed graph, not a tree because alone has been good enough that this met- each category can have several direct general- alevel (agenda) mechanism is rarely used. izations) (figure 2). Here, we end the discussion of CycL and pro- The Cyc predicates relating a category to its ceed to our discussion of the contents of the immediate supersets and subsets are, respec- knowledge base. tively, genls and specs. The instances of a cate- gory are its elements or members; the inverse of this relation is instanceOf. It should be The Current State of noted that unlike many frame systems, a Cyc’s Ontology strong distinction is made in Cyc between the two relations instances (elements) and specs The ontology of Cyc primarily includes cate- (subsets). The relation between Person and gories and things in the world; it also includes MarvinMinsky is different from the relation reified assertions and internal machine objects between Person and ComputerScientist. such as strings, numbers, lists, and program Another example is genls(Texan, American) code (figure 2).6 and instanceOf(Lenat, Texan). Although we The next subsection introduces some of the frequently use set-theoretic notions to talk basic concepts and distinctions used; the latter about collections, these collections are more subsections discuss representation issues such akin to what Quine (1969) termed natural as time, events, agents, and causality. One kinds than they are to mathematical sets. caveat: This discussion is only meant to give This distinction becomes apparent later when the flavor of the kind of things that are in the we start ascribing various intentional proper- Cyc knowledge base; it is by no means a com- ties to collections. prehensive overview of what is there, nor Because the generalization-specialization does it adequately capture the breadth of the hierarchy is important, we start off by dis- current knowledge base. Further details on cussing some of its highest nodes, why they

42 AI MAGAZINE Articles are in certain unintuitive genls-specs relations into frames the set of assertions that are The predicates to other nodes, and so on. binary predicates sharing a common first The universal set is called Thing. One of its argument, this distinction is merely a heuris- themselves partitionings is into the two sets InternalMa- tic-level (and user interface) one; there is are first-class chineThing and RepresentedThing. Instances of nothing special about binary versus other InternalMachineThing include the number 5 arity predicates at the epistemological level. objects in the and the string “DOG,” that is, things for We are now ready to discuss some of the language and which the representation is provided by the representation issues. First, we discuss the dis- Lisp substrate on which CycL is written. tinction between Substances and IndividualOb- can be used as Instances of RepresentedThing are things such jects; then we proceed to how we represent arguments as Chair for which only a representation is events, causality, intelligent agents, and so on. provided by CycL. This distinction is useful to other when deciding whether to use model attach- Substances versus Individual Objects predicates . . . ments (Weyhrauch 1986). If you take a piece of wood, and smash it into Another partition of Thing is into Individu- 10 pieces, each of them is still a (albeit small- alObject and Collection. IndividualObjects are er) piece of wood. However, if you do the elements such as Fred, TheWhiteHouse, and same to a table, each piece is not a (smaller) TheFourthOfJuly1990, that is, the non-sets. table. Substances are usually referred to in lin- They can have parts but not instances. guistics and philosophy as mass nouns; some Instances of Collection include Thing (the set of them are obvious (sand, peanut butter, air) of all things), Chair (the set of all chairs), and some less so (time, walking). We view the Texan (the set of all Texans), Dining (the set of concept PeanutButter as the collection of all all dining events), and so on. pieces of peanut butter. Predicates are all strongly typed, and a Every individual is made of some substance single category from the Cyc hierarchy has to or other. If we don’t have a single type of sub- be specified as the type for each argument.7 stance of which this individual is composed, This was a conscious design decision and has we can define a new one (BertrandRusselStuff? tremendous heuristic power as the knowledge ugh!); use a more general substance (Animal- base is built. Namely, when knowledge enter- Matter); or even fall back on the most general ers have an urge to define a new kind of slot, kind of substance, Substance. they must either select or define the domain Conversely, every piece of any substance— of the slot. Usually, the slot is separately say, this particular piece of peanut butter over worth existing only if the domain is; so, our here—is clearly an individual. This leads to single category constraint frequently gives the some interesting relations between substances knowledge enterers a well-needed dou- and individuals: blecheck on what they were about to do. Because every individual is a piece of some It should be noted that predicates such as substance, IndividualObject ⊂ Substance. How- age and weight can’t legally be applied to col- ever, any particular piece of any substance is lections (such as Chair). To rephrase, because an individual, and because the category corre- Chair is a set, an abstract mathematical entity, sponding to a type of substance is nothing but it can’t have a weight or an age (it can, of the set of its pieces, Substance ⊂ IndividualObject. course, have many other slots such as cardi- Thus, rather surprisingly, the two properties nality). Of course, we could discuss weight are extensionally equivalent, which explains (Chair905)—the weight of an element of the the IndividualObject = Substance node in set Chair—but this element is different. figure 2. We still choose to distinguish In addition to collections of individuals, we between them because they have different also have collections of collections. For exam- intensional descriptions. The different substances ple, PersonType is a set whose elements include (Wood, PeanutButter, Air, and so on) are all Person, ComputerScientist, and Texan, which instances of the collection SubstanceType, and themselves are collections whose elements the collections of individuals (Table, Person, include Lenat, Bledsoe, and so on. The hierar- Number, and so on) are instances of Object- chy folds into itself at this level; that is, we Type. We shortly describe how this difference don’t have collections of collections of collec- in intensional description is made use of. tions, and Collection is an instanceOf itself.8 Certain properties are intrinsic (that is, if an The predicates themselves are first-class individual has them, slices of this individual objects in the language and can be used as also have them, at least as a default), and arguments to other predicates (this is a other properties are extrinsic (that is, the second-order–like construct that can easily be parts don’t inherit this property from the first ordered). Although some of our editing whole). The notion of intrinsicness is closely tools (and internal data structures) gather related to that of substances: Consider a par-

FALL 1990 43 Articles

We can cut ticular table made entirely of wood—Table103. tially and temporally—and we now examine It inherits various default properties from them both. This leads to more general issues something Wood, which is the kind of substance it’s an about events that occur over some time inter- up spatially instance of (properties such as density, flash val and objects that exist over some time point), and it inherits other properties from interval. . . . but we Table, which is the kind of individual object We can cut something up spatially (as we can also it’s an instance of (properties such as number did with the piece of peanut butter), but we of legs, cost, size). The former properties are can also cut it up temporally. For example, cut it up intrinsic; the latter are extrinsic. This is no consider a process such as walking. In Cyc’s temporally. coincidence! We have noticed that an object ontology, we have the collection Walking, (typically) inherits its intrinsic properties which is the set of all walking events. Consid- from whichever instances of SubstanceType er one of its instances, a particular event in it’s an instance of, and it inherits extrinsic which, say, you walk to the corner mailbox properties from whichever instances of and back home. Imagine a videotape of this ObjectType it’s an instance of. event, and now consider some contiguous Thus, we now have a way of predicting for one-minute segment of the tape, say, the most predicates P whether it will be intrinsic. third minute of it. If anyone watched just Namely, see whether P’s domain is an instance this minute, they would report that this of SubstanceType or ObjectType. Now we see minute was itself a (albeit shorter) walking the importance of having collections of col- event, that is, another instance of Walking. lections; we could actually dispense with the In the last subsection, we noted that the concepts Substance and IndividualObject class Wood has an interesting property: When (because they are coextensional), but we can’t a member of the class (for example, Wood- do without SubstanceType and ObjectType. enTable001) is carved into several pieces, each For each type of substance, the granule one is still an instance of Wood. We then said predicate associates are the building blocks that Wood is a type of substance (that is, out of which the substance is built; for exam- instanceOf(Wood, SubstanceType)), and we ple, granule(Wood, PlantCell), granule(Sand, could use such substance-like categorization GrainOfSand), and granule(ThrongOfPeople, to decide on intrinsicness of properties. Here, Person). Considering a portion of a substance we are seeing an analogous phenomenon: A smaller than a mob of its granules is risky; class Walking, which is a set of events, has the many of the default properties are violated as property that when a member of the class is one approaches this level of granularity. Strict- temporally carved into pieces, each one is ly speaking, we could conceptually carve a still an instance of Walking. We say that Walk- throng of people into all their heads and the ing is a type of temporal substance, a type of rest, and neither alone would be an instance process. That is, Walking is an instance of Pro- of ThrongOfPeople. Thus, we place a further cessType and a spec of Process. This analogy restriction and say that the substancehood turns out to be more than superficial. Indeed, principle applies not only to portions much ProcessType is a spec of SubstanceType; so, bigger than a granule but also only to por- Walking is an instance of SubstanceType. Sub- tions that are just a contiguous mob of gran- stanceType is partitioned into TangibleSub- ules. As one drops below the grain size of a stanceType and ProcessType. Wood, for substance, one finds individual objects example, is an instance of TangibleSubstance- (which, in turn, are made out of substances). Type. For example, MilitaryHardware is a kind of Similarly, ObjectType is currently parti- substance (that is, an instance of Substance- tioned into TangibleObjectType and Type); its granules include guns and tanks, EventType. Although Walking is a type of pro- which are individual objects. Each instance of cess, WalkingToTheMailboxAndBack is not. If Gun is, in turn, made of some substance such you imagine the third minute of the 10- as Iron. The granule of Iron is IronAtom, which minute WalkingToTheMailboxAndBack event, it is an ObjectType, and so on. This alternating is still an instance of Walking, but a stranger individual-substance-individual-. . . continues watching just this minute would not say that at higher and lower (particle physics) levels. it was an instance of someone walking to a mailbox and back home—neither your home nor the mailbox might be visible anywhere Processes, Events, and Persistent on the videotape during this minute! The Objects relationship here between Walking and Walk- To this point, we have used the terms piece ingToTheMailboxAndBack is indeed the same and cutting up in a loose fashion. Actually, as the one between Wood and Table. Table these terms can be used in two senses—spa- is an instance of TangibleObjectType, and

44 AI MAGAZINE Articles

WalkingToTheMailboxAndBack is an instance of ties such as duration (the duration of Lenat is EventType. his lifespan), startingTime and endingTime.9 Earlier we saw that, surprisingly, Substance This subabstraction scheme shares similarities and IndividualObject were coextensional; with with the histories approach of Hayes (1985). a similar argument, it turns out that Process Not all objects that have temporal extents and Event are coextensional. This is why Pro- need exhibit enough persistence to warrant a cessType and EventType are actually the more persistent identity. Consider Roger dining at a useful collections to have explicitly represent- restaurant one evening. We might consider a ed rather than Process and Event. system consisting of Roger, the waitress, the There are now two types of intrinsicness as table, cutlery, food, and so on, interesting well: A property can be spatiallyIntrinsic or enough to create an explicit object Roger- temporallyIntrinsic. If you imagine the particu- DiningEvent2317 to represent this system. lar event in which you walked to the mailbox However, this object has no temporally persis- and back home, it is an instance of Walking tent properties, has poorly defined bound- (from which it inherits default values for rate aries, and is of little interest after Roger walks of speed, step size, amount of attention out (except perhaps as an example in an AI required, and so on) and an instance of Walk- article). Such objects are instances of Some- ingToTheMailboxAndBack (from which it thingOccurring, which is another important inherits default values for destination, dura- instance of EventType; these objects corre- tion, and so on). Sure enough, this third spond to names that usually go by the names minute of the videotape would agree with the of actions, scripts, or processes, and they are entire video on properties such as rate of rich objects (McCarthy and Hayes 1987). speed but would differ radically on properties The parts of an instance X of SomethingOc- such as duration. rateOfMotion is temporallyIn- curring are referred to as its actors. These parts trinsic, just as density is spatiallyIntrinsic. include all the persistent objects (that is, Consider Table001, a particular table, an instances of SomethingExisting) that are instance of the category Table. It persists for a involved in X. The actors of Roger- lifetime, an interval of time before and after DiningEvent2317 include the waitress, the which it doesn’t exist. Consider a temporal food, the table, Roger, the bill, and so on. slice of Table001, such as the decade it was There are useful specializations of actors, such owned by Fred. This slice is also an instance as performer, objectActedUpon, and instru- of Table. This fact is interesting because it mentInAction. The various actors in an event means that the category Table is an instance usually undergo some change either during or of ProcessType, and Table001 is an instance of after the event occurs (that is, the subAbstrac- Event! The process going on is existing. tions of the actors during or just after the Not surprisingly, a number of categories event are different from the subAbstractions exist in our ontology whose instances are just before). space-time chunks that exhibit sufficiently No fixed set of slots appears in an action persistent properties that it makes sense to such as RogerDiningEvent2317. The ones that associate a notion of identity with these appear could depend on what happened there objects. The category of such things is called and how much Cyc knows about it; and in SomethingExisting, and this category is an general, more details can always be added instance of ProcessType. Because all physical later. RogerDiningEvent2317 can later be arbi- objects (which have any persistent identity) trarily elaborated along any dimension, for exhibit this property, TangibleObject is an example, by specifying P(Roger- instance of ProcessType; so, anything that is DiningEvent2317) for predicates P that were spatially substance-like is also temporally sub- not known at the time that Roger- stance-like, although the converse is not true. DiningEvent2317 was This view of concepts such as Lenat or created! Table001 (that is, as Events) is interesting. We It should be noted, however, that no ad hoc view these objects as space-time chunks, and distinction is made about what kinds of we call the temporal pieces of these—for events can cause changes in the properties of example, LenatDuring1990, Table001While- instances of SomethingExisting. In fact, BeingEatenOn—subAbstractions of the larger because some of the properties of things piece. SubAbstractions can, of course, have change simply by their existing (for example, further subAbstractions. Each maximal sub- their age), it could well be the case that the Abstraction (for example, Lenat or Table001) is properties of something change substantially called an Entity; that is, entities cannot have even though it was not an actor in any superAbstractions. Being space-time chunks, instance of SomethingOccurring. these subAbstractions have temporal proper- Any instance of Event can have temporal

FALL 1990 45 Articles

. . . by associating would only need O(n + m) objects. A vast majority of the statements we would temporal extents with like to make relate coTemporal objects; that is, objects as opposed to the temporal extents of the objects related is the same. For example, FredIn1972 could not reifications of proposi- be married to EthelIn1958. Similarly, Fred tions, we get a certain lived in House001 from 1965 through 1975 means that livesIn(FredFrom1965To1975, added expressiveness. House001From1965To1975).11 To exploit this regularity, we use the predicate holdsDuring. Instead of creating innumerable pairs of con- cepts never again needed (FredIn1958, Ethe- lIn1958; FredFrom1965To1975 and House001From1965To1975; and so on), we properties (duration, endsAfterTheStartOf, and just assert so on). We use two abstractions of time to holdsDuring(Fred, livesIn, House001, 1965- specify these temporal properties: interval 1975) based and set based.10 Let’s first discuss the and interval-based abstraction of events. We can holdsDuring(Fred, marriedTo, Ethel, 1958). define a number of relations between events Similar constructs that allow temporal using the two primitives before and simultane- extents to be associated with reifications of ousWith that can hold between the starting or propositions are used when dealing with ending times of these intervals (which might predicates of arity greater than two. have discontinuities in them). Thus, for It turns out to be notationally much sim- example, we define the binary temporal rela- pler to write complex axioms (where specific tion startsBeforeStartOf as instances of SomethingExisting are replaced by (∀x,y) (startsBeforeStartOf(x, y) ⇔ before variables) using the subAbstraction formalism, (startingTime(x),startingTime(y))) . but it is more efficient to inference using the Why do we need a second abstraction of holdsDuring predicate. The heuristic level pro- time? The interval-based abstraction of time vides special support for doing exactly this makes it awkward to say things such as bifurcation: allowing the expressive but inef- “people don’t eat and sleep at the same time” ficient Subabstraction formalism for stating because we are not dealing with a single axioms but using the more efficient holdsDur- convex interval. In such cases, it is easier to ing predicate for doing inference whenever abstract the times when x is eating and the possible. times when x is sleeping as sets of points. In addition to instances of SomethingExist- Then, based on this set-based abstraction, we ing, such as Fred , and instances of Somethin- use set-theoretic relations such as intersects, gOccurring, such as FredBeingBorn, we also subset, and disjoint to state axioms such as recognize changes in properties of persistent “people don’t eat and sleep at the same objects as first-class events. If Fred was time.” In this case, the sentence would just be hungry before going to the restaurant and an assertion that for each person, the piece of not hungry afterwards, we can consider this time they’re eating and the piece of time change as an object. Formally, this corre- they’re sleeping, viewed as sets of points, sponds to reifying a sentence that specifies have an empty intersection. that he was hungry at some time and not It is interesting to note that by associating hungry at some later time into an object and temporal extents with objects as opposed to making this resultant object an event reifications of propositions, we get a certain (because one can associate temporal proper- added expressiveness. For example, it is easy ties with it). to express statements of the form “Fred when he was 39 liked his house as it had been 20 Temporal Projection. When one of the years earlier” in this formalism, and it is diffi- properties of an instance of SomethingExisting cult to do so with formalisms that associate changes, it’s not likely to affect all (or even time with propositions (or their reifications). many) of its other properties (McCarthy and However, there is a high cost associated with Hayes 1987). For example, when Guha gets a this expressiveness. Given n entities and m haircut, it doesn’t affect his address, lan- intervals, we can have as many as n ⋅ m sub- guagesSpoken, birthDate, and so on. This fact Abstractions (that is, have to create O(n ⋅ m ) is not surprising because a useful set of prop- objects) using the set-of-points-based abstrac- erties is useful in part because the properties tion; using the interval-based formalism, we are largely independent.

46 AI MAGAZINE Articles

Associated with each ground formula is an Guha (1990b). Associating interval of persistence. Thus, if we knew that Fred was happy at time t0, and the persistence Causality. Most treatments of causality (in specific finite interval of this time was I1, then given any AI) proceed by labeling some appropriate periods of point in time between t0 and t0 + I1, we can subset of occurrences of material implication conclude that Fred was happy at this time as causal. We do this labeling by using a persistence point. Usually, we associate default periods of causal relation whose argument is the reifica- with proposi- persistence with classes of propositions by tion of a sentence involving a material impli- tions has using axioms, which are called temporal pro- cation. For convenience, we refer to ((p ⊃ q) ∧ jection axioms. These axioms enable us to pro- (causal ‘(p ⊃ q))) as (Cause p q). Let us take a advantages ject (infer a good guess for) Fred’s name and closer look at the axioms that specify the over using a gender years in the future or past, his hairStyle meaning of Cause: months in the future or past, his mood sec- First, suppose we assert (Cause p q). Then (conventional) onds in the future or past, and so on, based it follows that (p ⊃ q). In other words, Cause frame on the values of these attributes at some is a strictly stronger notion than material given time. implication. axiom. . . These temporal projections are only Second, suppose (Cause p q), and p and q are defaults. If the evidence is contrary to these ground sentences and true. Then p and q projections based on particular actions that must refer to events (which in Cyc is any- have taken place, this contrary evidence usu- thing that can have temporal attributes). That ally overrides these projections. Also, if an is, p and q must have at least one object con- event that is capable of changing this proper- stant that is an event. ty is known to have taken place, even if the Third, suppose (Cause p q). Then every effects of the event can’t be computed (possi- single event referred to in p must startBefore- bly because of missing information), we don’t TheEndingOf every event in q. project this property across such an event. Fourth, given any atomic ground sentence Associating specific finite periods of persis- q that refers to an event, either q should be tence with propositions has advantages over basic, or there should be some sentence p using a frame axiom (McCarthy 1987a) to such that (Cause p q) is true. Intuitively, q allow for extended projection. It provides a being classified as basic corresponds to the simple scheme for accumulating the informa- notion of it being unexplainable. tion at a finer granule (regarding the possibili- Fifth, given a statement of the form (Cause ty of different events capable of changing this p q), either this statement is “basic,” or a property that are likely to occur) into a coars- sequence of sentences exists of the form er granule in terms of this interval. However, (Cause p a), (Cause a b) . . . (Cause m q), that is, this association introduces the following some mechanism that implements this causal problem: If our knowledge that Fred was relation. happy (or a gun was loaded) at t0 came from Both the fourth and the fifth axioms are some source other than temporal projection, extremely strong statements to make, which we are willing to say that until time t0 + I1, is why the notion of basic sentences was he’s happy (or the gun is still loaded). Howev- included. No commitment is made about er, we don’t want to repeat this argument and which occurrences of implication are to be say that at time (t0 + I1) + I1 he’s still happy, labeled as causal. The aim of the previous for- and the gun is still loaded. That is, we want to malism is to provide a facility to state and project only from a base time point where we experiment with various heuristics for doing had this other source of information (that is, just this labeling. As with default reasoning, some justification other than temporal pro- we chose to have axioms in the knowledge jection) about the fact in which we are inter- base provide the guidance and decision making ested. Notice how we escape from this classic rather than wiring it in in some fashion. problem by making use of the ability to explicitly refer to justifications for facts Actions and Concurrent Processes. (which we obtained using reflection) to state Each action (that is, instance of SomethingOc- this dependence (Guha 1990a). curring) has a set of axioms associated with it Temporal projection has more to it than specifying its preconditions, its postcondi- just a frame axiom. We mentioned earlier the tions, and constraints on the actors during concept of a narrative as a kind of argument. the event. A tangible object is a structured These narratives, together with argument arrangement of its physicalParts (for example, preference criteria based on notions of causal- Table001 breaks down into its legs, top, and ity, are used to actually do the temporal pro- so on). In much the same way, an action is a jection. The details of this can be found in constrained arrangement of its subEvents and

FALL 1990 47 Articles

actors; for example, RogerDiningEvent2317 one can provide only descriptions and not breaks down into subEvents such as ordering definitions of the more complex actions in food, eating, and paying the bill and actors terms of their subEvents. In such cases, the such as Roger, the waitress, and the food, more complex actions are not merely for with restrictions on their arrangements and notational convenience but are an epistemo- properties. Both events and tangible objects, logical necessity. then, can have a structure slot. An entry on a One of the problems that arises with pre- structure slot is a Structure, which, in turn, dicting the effects of actions on the partici- lists the parts/subEvents and the constraints pating actors is the possibility of concurrent on them. Several entries might be on a struc- events. Our solution for this problem is as fol- ture slot corresponding to orthogonal decom- lows: Cyc gathers all the co-temporal events positions. It is significant that the constraints Ei (cutting up events if required) that affect a themselves, in both the action and tangible particular property and collects them into a object cases, are often similar. For example, a single new event E. Cyc then computes the set of subEvents or physical parts might be net effect of E on this property from the linearly sequenced or partially ordered (in subEvents of E (suppressing the direct updat- time or space, respectively), nested in series, ing of the property by the subEvents). It and so on. should be noted that the agglomeration is Given a physical object and its parts, it is necessarily a nonmonotonic process because often possible to distinguish between differ- a closed-world assumption has to be made ent classes of parts. For example, the parts of while collecting the Ei. most tables can be classified into parts meant Another thorny issue is how to handle, for for providing support to the top, the top example, the weight of (the subAbstraction) itself, parts for decoration, and so on. We of FredSmith on a particular day because it usually associate a predicate (which is an obviously fluctuates slightly from moment to instance of PartSlot and a specSlot of physical- moment. More generally, when dealing with Parts) with each of these classes and use these subAbstractions of a reasonable duration, it predicates to relate the parts to the overall becomes hard to specify values for most tem- object (rather than just using the single predi- porally intrinsic numeric attributes because of cate physicalParts.) the (often slight) changes in the value of the A similar approach is taken to relating the attribute over the period of the subAbstrac- parts of an action to the action. When deal- tion. To overcome this problem, we use a ing with actions, there are two important cat- class of terms corresponding to intervals in egories of parts—the actors and the the quantity space (of the attribute). These subEvents—and there are separate categories intervals can be named (for example, around of slots that are used to relate the actors to an 180 pounds) and in the extreme can also be action (the ActorSlots) and the subEvents to open in one direction. A calculus for perform- the event (the SubEventSlots). The ActorSlots ing simple mathematical operations with define the roles played by the different actors these intervals (provided by CycL) makes it in the event (performer, victim, instrument, relatively easy to use both qualitative and and so on). Given an action and a participant quantitative specifications for attributes, actor, there are three subAbstractions of the switch between them, and so on. Another use actor related to this action, namely, the sub- for these interval-based quantity terms is to Abstraction of the actor just before, during, specify defaults for numeric attributes (for and after the action. In practice, we associate example, height, weight) for categories that the entities of the actors with the action exhibit some but not too much variation in (through the ActorSlots) and then use three the value of these attributes (for example, the ternary predicates (subAbsOfActorBefore, sub- weight of newborn humans). AbsOfActorDuring, and subAbsOfActorAfter) to Interval-based quantity slots are also useful specify the exact subAbstractions of the actors. for dealing with quantities for which no It should be noted that there are no primi- acceptable measurable scale or measuring tive actions into which all actions are broken instruments have yet (or perhaps ever will) to down. That is, the actions are not merely be defined: happiness, alertness, level of frus- macros introduced for notational conve- tration, attractiveness, and so on. Despite the nience (for use instead of more complex lack of absolute units of measure, mileposts sequences of primitive actions). We eschew for these attribute values can be defined, and primitive actions because we want to be able partial orders and even crude calculi can be to reason at different levels of abstraction, developed. and the a priori assigning of a set of actions as primitives goes against this ability; often, Composite Objects and Agents

48 AI MAGAZINE Articles

In addition to purely physical objects (such as separate concepts for Frankenstein’s mon- We eschew tables and rocks), objects such as books and ster—he was rather unusual after all—but we people exist with which we would like to shouldn’t need to have three separate con- primitive associate an intangible aspect such as a mes- cepts for every composite if nothing conflicts actions sage or a mind (which also would have a tem- from one to the other. We added the cate- poral aspect). Given such a composite gories PartiallyTangible (a spec of SomethingEx- because we tangible-intangible object, we can separate isting and a genl of TangibleObject) and want to be the purely tangible parts from the purely PartiallyIntangible (a spec of SomethingExisting intangible and separately represent both of and a genl of IntangibleObject); so now, Com- able to reason them explicitly as well as represent the com- positeTangibleIntangibleObject is a spec of at different posite. The purely intangible parts are both of these new Partially . . . collections. IQ, instances of IntangibleObject, the purely phys- for example, now makes sense for PartiallyIn- levels of ical parts are instances of TangibleObject, and tangibleObjects, and weight makes sense for abstraction . . . the composition is an instance of Composite- PartiallyTangibleObjects, and so on. Thus, we TangibleIntangibleObject. can state IQ, weight, and all the other proper- The most important subset of Composite- ties right on the composite unit. TangibleIntangibleObject is Agent—the set of If we happen to be representing an excep- intelligent agents—and this subsection con- tion, such as the monster, in which some siders some aspects of representing agents. property has a different value for the physical Agents include people (and most macroscopic or mental extent, then we can create the animals), computer programs, corporations, appropriate instances of TangibleObject and and other things with , purpose, IntangibleObject, just as we did previously. As and (frequently) .12 Let us first con- a default, we also inherit the properties that sider why we want this distinction between talk about physical (mental) properties to the the physical and nonphysical aspects of physical (mental) extents. This framework agents. Consider representing the Franken- gives both the expressiveness of the separa- stein monster at some point in time. We tion of physical and mental parts and the effi- would like to be able to say that his body was ciency of not doing this separation unless it is n years old, his mind was m years old, and the required. composition was k years old. Rather than A full description of the various issues relat- introduce new predicates such as ageOfMy- ed to agenthood that have been and are being Mind, ageOfMyBody, amountOfTimeSinceMy- considered in Cyc would require more space MindAndBodyWereJoined, and so on, we than is available here, so we just mention a would like to use the single existing predicate few of them. One of our recent technical age; besides being simpler and cleaner, this reports (Guha and Lenat 1989b) deals exclu- predicate also lets us fully use the axioms sively with this topic. involving age that are already available. Agents can be collective (such as organiza- To deal with the previous example, we need tions and institutions) or individual (such as to be able to explicitly talk about the physical people). Each agent can have one or more and mental extents of a composite. Having attitudes toward any given proposition; some made this distinction (and relating these of the propositional attitudes currently used using the predicates physicalExtent and men- in Cyc include beliefs, goals, dreads, purpose, talExtent), we associate weight not with the and desires. We now consider some issues mental part of the Frankenstein monster nor related to these propositional attitudes. with the composite part but only with the A primitive notion of awareness is incorpo- physical part; similarly, IQ is associated only rated as follows: Each agent has a set of terms with the mental part. Finally, age makes sense and predicates s/he is awareOf. An agent for all three aspects and has a different value cannot have any attitude toward a sentence for all three. that involves terms s/he is not aware of. This This scheme has the advantage of separating restriction is introduced to keep us from, for the physical aspects of composites from their example, talking about Aristotle’s beliefs mental aspects and allows us to talk about about the Space Shuttle. aspects that might apply to both with differ- Attributing our own beliefs to other agents ent values (age, interestingness, likedBy, and so (with whom we might never have directly on). However, in most cases, there is not a communicated) is something frequently single predicate that can be used and has a done. Sometimes this attributing is good (for different value for two or more of these units example, when the traffic light in front of (physical extent, mental extent, composite). you turns green, you assume that the drivers We would like to make use of this regularity. on the cross-street share your beliefs about In other words, we don’t mind having three what this green light means), and sometimes

FALL 1990 49 Articles

it’s bad (for example, cross-cultural mirror and achieve. Moreover, A believes that P will imaging has led to innumerable political dis- become true because of this event E. The con- asters). A class of axioms called the belief pro- cept of purpose allows us to (write axioms jection axioms enables Cyc to efficiently do this that will) decide when an agent will partici- sort of mirror imaging and explicitly record pate in (or pull out of) an event. separate beliefs when they are known. These Agents can enter into Agreements with belief projection rules themselves are moder- other agents; some of the parties to an agree- ately interesting because they describe what it ment might be individual agents, and some means to be a public figure, what it means to might be collective. This activity is one of the be commonsense knowledge, and so on. most important, frequent ones that agents CycL provides special support to efficiently carry out, and we use the remainder of this handle these rules at the heuristic level. subsection to discuss it. Agents can be in control of (the truth value An agreement defines a set of propositions of) propositions, which means that the con- that all the participants share (although they trolling agent can perform the requisite might have different propositional attitudes actions that determine the proposition’s truth toward the various clauses of the agreement!). value. For example, a robber holding a gun is In addition, the Agreement might also assign in control of whether the gun fires and at certain responsibilities (logically, these are whom. The truth value chosen by the con- also propositions) to specific participants. trolling agent is assumed to be based on Agreements also usually specify certain puni- his/her/its desires. tive or remedial actions to be taken in case This notion of agents controlling proposi- these responsibilities are not fulfilled. If the tions is sometimes an expedient way of com- agent performing these punitive actions is a puting the truth value of certain propositions. LegalSystem (such as a Government or Govern- If an agent is in control of a proposition P, mentalAgency), then the agreement is said to and s/he desires P, then we can assume that P be a LegalAgreement. is true (modulo limited resources, conflicting We distinguish between agreements in goals, and so on). which the event that enrolled a particular The concept of control gives us an abstrac- agent was one in which s/he voluntarily par- tion layer that allows us to skip the details of ticipated and ones in which s/he didn’t par- the agent planning to make P true, executing ticipate voluntarily. For agreements an agent this plan, monitoring it, repairing it, and so involuntarily participates in, the constraint on. For example, a teacher assigns a book that s/he shares the common beliefs of the report to a student and, later, needing a copy agreement is slightly relaxed. of this book, asks the student where it can be As a default, collective agents have one or obtained. The teacher didn’t have to worry more special types of agreements associated about the plan the student made to get the with them, such as their charter and articles book or read it, the details of the execution of of incorporation. Often, an organization or this plan, and so on, to believe that (by the institution will itself have (or at least act as if day before the book report was due) the stu- it has) certain desires, dreads, purposefulness, dent would have somehow obtained a copy authority, and so on, that are not present in of the book. most (or perhaps even any) of the partici- Just knowing that you control when you go pants or members of the organization. Often, home from work and that you want to sleep such attitudes and goals are captured in, or at home tonight is enough to have me call even caused by, the special agreements it par- you first at home at midnight if I have to ticipates in. reach you at this time; that is, I don’t have to worry about the plan you made to get home, the details of the execution, and so on, to Microtheories and the Ontology believe that (by midnight, at least) you had The formalisms discussed in the previous few made it home. sections try to provide a general and expres- Agents can participate in events (actually in sive framework for representing various instances of SomethingOccurring (see the sec- aspects of the world. However, as our initial tion Processes, Events, and Persistent Objects statements claimed, much of the power in and also figure 2) in one of two modes: vol- Cyc comes from specific partial solutions, untarily or involuntarily. If an agent A partic- simplified models (of time, space, a domain, ipates in an event E voluntarily, s/he usually and so on) that work in certain common but has a purpose P; P is generally one of his(her) restricted situations and not from overarch- goals, which, in turn, are the subset of ing use-neutral formalisms. his(her) desires that s/he has decided to try The use of single abstraction, no matter

50 AI MAGAZINE Articles how expressive, also has bad consequences The concept of microtheories figures from a pragmatic standpoint. For example, one would like to be able to state something prominently in the approach we are like “When x buys o from y, one of the taking for developing a representation subEvents is a paying event, in which x pays y the price of o.” Given an expressive abstrac- for space. tion of time, we might have to write a long axiom to encode this statement—one that involves numerous uses of subAbsOfActorDur- ing, subAbsOfActorAfter, and so on—and most of the details being represented would be irrelevant in 99 percent of the uses of the axiom. Thus, we would like to use much simpler abstractions if the domain we are dealing many failed attempts at developing a single with does not require more expressive abstrac- general abstraction for space, we decided to tions. Further, the process of formulating use a number of globally inadequate but models for domains becomes time consuming locally adequate theories of space. For exam- if one is going to try and develop the right ple, we are working on abstractions of space model for each domain. that are based on (1) simple diagram-like rep- These considerations led us to introduce resentations, (2) computer-aided design–like the concepts of microtheories and contexts representations that build solids and surfaces (McCarthy 1987b; Guha 1990a) that we men- out of a small number of primitives, and (3) tioned earlier. These microtheories are first- device-level representations that primarily class objects, and a number of operations are deal with the topology of a device by using a possible on them. For example, given a dis- number of primitive components and using a course or a problem to be solved, we can small number of ports for each primitive and decide to create and enter a new context that a small number of ways in which two primi- leaves implicit a number of arguments to tives can be connected. Although none of predicates, makes assumptions about the these abstractions is sufficient as a general domain, and so on. We can have axioms that approach to representing space, for any given describe which kind of microtheory should be problem, one of these (plus a few more that used for which problems, which form tax- we are developing) if often adequate. These onomies or other structures of microtheories, various abstractions of space are organized which decide when it is necessary to change into a hierarchy because some are just refine- the context of a microtheory (see The Evolu- ments of others. tion of the Representation Language for a dis- Contexts and microtheories are not cussion on the relationship between a context panaceas for the problems mentioned at the and a microtheory), which have defaults that beginning of this subsection. They bring their lift the contents of one microtheory into a own set of problems with them. For example, more general one, and so on. we need to determine when to use which The ontology described in earlier sections is context, when a context is insufficient, when the most detailed one and is representative of we need to enter a new context, and so on. the net-expressive power of the language. In Although it does not seem hard to come up addition to the formalism for time and with extremely specific heuristics that do actions previously mentioned, we have a lat- these tasks (for example, for kinematics prob- tice of simpler abstractions of these available. lems, if the velocity of the objects is less than Some of these abstractions have only discrete .5c, then use Newtonian mechanics), it would time or associate time with propositions, and be preferable to have at least a few general some even assume that the whole theory they heuristics for these purposes (Guha 1990a). are dealing with is about a single instant of This area is one of current focus. Most of the the world and, hence, completely ignore knowledge base is currently in the theory time. A particular domain theory about, say, MEM. The simpler abstractions of time men- Buying (remember that many different theo- tioned earlier are available, and a few theories ries can exist for any given domain), can use use these abstractions. A few general heuris- the simplest abstraction of time, actions, and tics are available for solving some of the prob- so on, that are adequate for this theory. lems (such as deciding when to use which The concept of microtheories figures promi- theory), and more are being developed. We nently in the approach we are taking for expect that most of the theories of topics at a developing a representation for space. After finer granule than those mentioned in this

FALL 1990 51 Articles

section, which we will add to Cyc, will make cally, a few pure time intervals do exist in the use of this notion of microtheories and that sense of there being some events whose only they will figure prominently in the overall interesting aspects are their temporal extents, structure and contents of the knowledge base. for example, TheYear1990. By examining many cases of reasoning The Evolution of the about the creation and destruction of objects, we were led to classify TangibleObject as a Cyc Ontology subset of Event. That is, each tangible object is Earlier, we described the 1984–1990 evolution running a process so to speak—the process of of the Cyc methodology and the CycL repre- existing. This ontology lets us easily state sentation language. The construction of the temporal relations between objects, such as ontology began in late 1984 with an expert “Fred lived long after Aristotle.” We originally system–like approach. As is apparent from viewed the Substance versus IndividualObject Lenat, Prakash, and Shepherd (1986), issues distinction to be crucial. We were surprised to such as the representation of time, substances, find the two concepts coextensional (each por- agents, and causality were largely ignored in tion of a substance is an individual and vice favor of highly specific issues. However, our versa); similarly, TangibleSubstance is coexten- position has considerably changed in the sional with TangibleObject; and so on. The interim, and these issues are now regarded as central distinction turns out to be between, significant to the ontology. for example, TangibleSubstanceType (whose We have worked out fairly adequate solu- instances include, for example, Wood and tions to some of these ontological problems Water) and TangibleObjectType (whose and are working on solutions for others. We instances include, for example, Table and differ from the rest of the AI community Ocean). Using this latter distinction, Cyc can, working on such issues in that we have for example, predict whether a property will be refrained from agonizing over the myriad extrinsic or intrinsic. subtleties of, for example, the different for- During late 1986 and early 1987, we malisms for representing pieces of time; thrashed through a series of formulations for instead, we have concentrated on using the basic property inheritance, including explicit- formalisms we have for actually encoding ly having frames such as TypicalPerson instead information about various domains. We have of (and at one point in addition to) TheSetOf- also refrained from tinkering with the logic AllPeople. We can use TypicalPerson to illus- for, for example, reasoning about pieces of trate two troubles with prototypes: time; instead we have worked within the First, one often wants to inherit along slots logic described earlier (see The Evolution of other than allInstances. For example, each the Representation Language). entry on Stallone’s fans slot should inherit In general, we did not find these solutions entries such as Rocky and Cobra to its on the first try or even the second. Therefore, moviesSeen slot. (Of course, our use of terms we conclude this subsection with a brief list such as slot and entries is just shorthand. In of some of the mistakes we made and the this case, the general nonmonotonic asser- lessons we learned along the way.13 tion at the epistemological level is fans(Stal- ∧ ⊃ We began by explicitly representing the lone, x) ¬abn(x) moviesSeen(x, Rocky).) time interval over which an event occurred. Second, we occasionally need to distin- Thus, for example, we would have an event guish a predicate (such as interestingness, cre- such as TrafficAccident903 and a separate atedBy, likedBy) applying to the set of all object TimeIntervalOfTrafficAccident903, and people, being inherited to the typical only the time intervals could participate in instance of this set, or even applying (at a temporal relations such as before and starts- metalevel) to the reified Cyc concept itself. AfterTheEndOf. However, again and again, For example, the typical person is created by there was never anything more to say about their parents, the frame TypicalPerson was cre- these time interval frames, that is, beyond a ated by Lenat, and the set of all people has pointer to the event that they represented the no creator (all sets exist in a Platonic universe time interval and beyond the temporal rela- and can be neither created nor destroyed). tions in which they participated. Thus, even- The typical person is interesting, the concept tually we just merged the two notions—an TypicalPerson is uninteresting, the set of all event and the time interval of its occur- people is reasonably interesting, the concept rence—and now the domain and range of Person representing the set of all people is temporal relations is Event (the set of all slightly interesting, and so on. Eventually, we events) rather than TimeInterval. In theory, dispensed with concepts such as TypicalPerson TimeInterval need no longer exist; pragmati- because any assertion applying to it could

52 AI MAGAZINE Articles just as well be stated as applying to (that is, face issues are tangled with knowledge acqui- Most inheriting to) allInstances of Person. sition (the next two items respectively Precision is generally a good thing, or (to be describe tools for doing knowledge acquisi- knowledge more precise) the ability to be precise is gen- tion manually and automatically). entry in Cyc erally a good thing. However, in most situa- The Copy and Edit Mechanism: Most tions, the most cost-effective behavior is to knowledge entry in Cyc involves finding sim- involves choose a level of detail and use the corre- ilar knowledge and copying it and modifying finding sponding microtheory instead. A case in the copy. More and more over the years, Cyc point was our partitioning of the universe has helped in this process, and as a result, similar (Thing) into TangibleObject (such as knowledge entry can be done more rapidly knowledge Rock0093), Intangible (such as the predicate than we had originally estimated. mass or the set Rock of all rocks), and Com- Digitized Images: Yes, often it’s much and copying positeTangible/IntangibleObject (such as Lenat). easier to just grab a picture of an object and it and As we discussed in detail in the sections on point to the part you mean rather than try to modifying composite objects and agents, Cyc frequently figure out what its name is. Cyc contains such gets the right answer without making this dis- images (from The Visual Dictionary [Corbell the copy. tinction, even though in rare cases, it is 1987]), but experienced knowledge enterers important (for example, the typical person know their way around the knowledge base has the same answer for how old is their and rarely use them. mind, their body, and the joining of the two, Other Nonpropositional Knowledge: but we can, as in Frankenstein, separate the Some Cyc researchers are building neural nets three concepts if we need to). In these subsec- that we can use at the earliest (preheuristic) tions, we explained our solution (that is, our and latest (reduction to instinct) stages of current way out of this dilemma), which understanding some task (for example, train- involves the use of PartiallyTangible and Par- ing a net on examples of good analogies and tiallyIntangible, and we also described our cur- then letting it make hunches about potential- rent investigations into codifying and using ly good new analogies, hunches that the microtheories. rest of Cyc can investigate and flesh out sym- bolically). The Module: This The Current State of Cyc’s module is a symbolic learning subsystem in Environment and Infrastructure addition to the previous statistical, nonpropo- You might have noticed several aspects of the sitional one. This program roams over the Cyc effort that we did not even touch on in knowledge base, typically at night, looking this article. Although interesting in their own for unexpected symmetries and asymmetries. right, these areas are not our main topic for These, in turn, often turn out to be bugs, usu- research, and in each case, we have done only ally crimes of omission of one sort or another. what we felt necessary to maximize the rate In rare cases today and, we expect, more fre- of Cyc’s construction. Here is a list of a few quently in future years, these turn out to be such intentional omissions:14 genuine little discoveries of useful but hither- The Knowledge Server: This subsystem to unentered knowledge. accepts everyone’s knowledge base opera- tions; serializes them; and, in case constraint violations appear, adjudicates the resolution Present and Future Directions of the conflict. In cases of no conflict, it then This article began by explaining the need for broadcasts the operations to everyone else. a large, general knowledge base to overcome The connections today are generally thin the brittleness (in the face of unanticipated wire, although we expect this to change in situations) that limits software today. The the coming year. need for a Cyc-like knowledge base is critical The User Interface: We have constructed not only in expert system–like applications various textual and graphic tools for brows- but also to do semantic processing for natural ing, querying, and editing the knowledge language understanding (disambiguation, base. Some of the graphic tools are semantic anaphora, ellipsis) and to enable realistic net based; one is a sort of Escheresque recur- machine learning and analogizing. sive bird’s-eye view of a museum floor plan. We then focused on criteria for an adequate Some of the editing tools are ideal for making representation language for this knowledge point mutations and corrections; some are base, which drove us to the bifurcated CycL oriented toward sketching some brand new architecture, having both an expressive epis- (and not yet well codified) area and gradually temological level and an efficient heuristic making the sketch more precise. User inter- level. One of the Cyc project’s most interesting

FALL 1990 53 Articles

We plan to accomplishments has been the construction providing special support for this feature. of the TA translator, which can convert back Metalevel: Although there are various facil- develop an and forth between general epistemological- ities for stating and using metalevel informa- ontology of level (FOPC-like) expressions and particular tion in Cyc, the metalevel reasoning that heuristic-level template instances. The episte- takes place in Cyc today is minimal because it arguments mological and heuristic knowledge base levels has not yet been the bottleneck in building and formulate and the TA translator are fully implemented and running Cyc. We believe this situation and function as described in this article. might change as Cyc grows even larger, and and encode We discussed some of the unexpected the search for arguments grows. Metalevel assorted aspects of the Cyc knowledge base’s organiza- reasoning in Cyc needs to be extended both tion and contents, such as the relationships by adding reasonable metalevel heuristics (for perference between IndividualObject, Substance, Process, example, for identifying the small subset of criteria that and Event. We gave the flavor of some of our the knowledge base that is even possibly rele- recent research by sketching our (still incom- vant to answering a given query [Guha and are useful in plete) treatment of agents and agreements. Levy 1990]) and providing some ability for default Finally, we briefly mentioned the Cyc user the system to improve its performance from reasoning . . . interface tools, knowledge server, and related past experience. issues. Perhaps the most important theme from all Future Plans for the Ontology and the these aspects of the project is that of eschew- Knowledge Base ing the single general solution dream, instead assembling a set of partial solutions that work The work being done on the Cyc knowledge most of the time and work efficiently in the base is largely in the form of the develop- most common situations. We have seen this ment of microtheories for topics at the level tenet apply to representation language of transportation, human emotions, modern design, knowledge entry methodology, con- buildings, and so on. Microtheories are being trol of search during inferencing, and truth developed in two major areas. The first of maintenance as well as throughout the con- these is a set of commonsense theories about tents of the knowledge base. The emerging everyday physical phenomena (in the manner global behavior of the system should hopeful- of naive physics), and the second of these is a ly be fairly use neutral. set of theories dealing with aspects of agents In the following two subsections, we dis- (such as agents having and acting on the cuss the directions along which we are cur- basis of emotions, goals, limited resources). rently working to extend both CycL and the In addition to these areas, a significant knowledge base. In some sense, the two are research effort is in progress on the topic of extremely intertwined, in that the extensions microtheories themselves, from the perspec- to CycL are largely driven by the needs of the tive of both formulating axioms for solving knowledge base. We then touch on other problems (such as when which theory is to be future plans and issues: new collaborations; used) and cataloging the standard kinds of the proliferation, standardization, and mar- simplifications that can be made to theories keting of Cyc; and the expected future scenario on developing formalisms, such as for time for the demise (or at least transmutation) of and space, that make it easier to state axioms the Cyc project. (that use these formalisms). Finally, although gross size is often nega- tively correlated with overall knowledge base Future Plans for the Representation quality and power, we should mention that Language Cyc’s knowledge base currently contains over The main focus of research on extending the a million assertions, and we expect almost an reasoning abilities of the CycL language is order of magnitude increase in the coming along the following lines: five years. There are currently 30,000 units, of Default Reasoning: We plan to develop an which approximately 4,500 are types of pred- ontology of arguments and to formulate and icates, and approximately 5,000 are collections. encode assorted preference criteria that are useful in default reasoning (to aid in choos- Collaborations ing one argument over another). How are we to judge where we are going? Microtheories: Although the epistemologi- How do we make sure that we don’t go cal level does not require any extension to through these 10 years of labor and then find deal with these explicit contexts, it is likely out in 1995 that we were fundamentally mis- that certain standard kinds of microtheories taken all along? We make sure by getting are likely to benefit from the heuristic level’s others to actually use our system.

54 AI MAGAZINE Articles

Microtheories are being developed in two major areas. . . a set of theories about everyday physical phenomena . . and . . . a set of theories dealing with aspects of agents . . .

In the past 18 months, as the Cyc represen- As another example, given that the basic busi- tation language and ontology stabilized, we ness unit in a hotel is the room and at a car began to encourage collaborations with both rental agency is the car, use relatively deep academic researchers and industrial researchers understanding of what goes on at each place and developers. We also held workshops and to decide that for a hospital, which is a new panel sessions. Finally, we once again (after a potential customer, the right business unit is purposeful several-year hiatus to focus solely Bed, not Room. These examples illustrate a on research) began to write books and techni- reliance on the scope of the Cyc knowledge cal reports and articles, such as this one, to base. The next example illustrates a reliance inform and interest our colleagues. on the richness and size of one particular part Cyc is still too small to have more than an of the knowledge base, namely, the part deal- anecdotal chance of improving the perfor- ing with predicates (and, in particular, slots.) mance of the application programs using it, One speculative but fascinating line of but the early results are promising. Cyc-based research by , Micheal Huhns, and applications and research efforts are under others (Cohen and Loiselle 1988; Huhns and way at Bellcore, Digital Equipment Corpora- Stephens 1988) involves automatically guess- tion, NCR, US West, and Apple, and these ing whether the composition of two unary efforts do not include the numerous Cyc- functions (binary predicates, slots) s1 o s2 is based research projects in academia. In the equal to any known relation s3. The guess is following paragraphs, we sketch a few of made as follows: They assign +, -, and 0 values these efforts plus a few that are just begin- to 10 attributes of each predicate (such as ning. Our purpose is to illustrate projects that hierarchical, composable, temporal, near, intrin- are using the richness, scope, or size of the sic). They then create a combination table for Cyc knowledge base. each of these attributes, which says, for exam- At Digital, John McDermott, David Mar- ple, “if s1 has a + value for its hierarchical ques, Renata Bushko, and others have built a attribute, and s2 has a - value, then s3 must Cyc-based computer-sizing application. Serv- have a + value.” Given a particular s1 and s2, ing as a preprocessing step for Xcon (Soloway, their values for the 10 attributes produce a set Bachant, and Jensen 1987), its job is to ask of 10 constraints on the values of these questions about a potential Digital customer attributes for s3, which is used to constrain and come up with a rough computer sizing the search for s3’s identity. (mainframes versus workstations, approxi- To the extent that this line of research suc- mate number and size of file servers, and so ceeds, it teases apart the underlying deep on). The trouble with standard expert systems structure of what it means to be a predicate. doing this task is that they ask too many However, when or if the scheme fails, such questions, questions that can often be failures should lead to the refining of the answered by common sense, questions that combination tables and assignments or, Cyc is able to guess answers for. (We don’t rarely, to the defining of a new primitive mean that standard expert systems lack infer- attribute for predicates. In any case, the point ential abilities, just that they simply don’t is that the research required a platform like have the required commonsense knowledge Cyc: (1) The size of Cyc’s slot space (4000+ from which to draw the inferences.) known types of slots and other predicates) For example, given that toy manufacturers increases the chance that the resultant 10 have stringent government safety regulations vector matches some existing predicate. (2) and adult clothing manufacturers don’t, The richness of slot space (categories and which is more likely to be the proper match other interslot relationships) helps in the fol- or precedent for a new potential customer lowing way: For each particular slot si, most who is a manufacturer of children’s clothing? of the 10 primitive attributes’ values for si can

FALL 1990 55 Articles

We tell Cyc that Sam is a land animal and ask for types of body parts that Sam probably has: (assert ‘(#%allInstanceOf #%Sam #%LandAnimal)) (ask ‘(#%hasPartTypes #%Sam x)) . The question is addressed to the epistemological level. The tell-ask interface translates this question into an appropriate heuristic-level query. The heuristic level already contains an inheritance axiom that says the land animals have legs. The inheritance procedure runs and yields a simple argument that Sam has legs. Because there is no reason for invalidating this argument and because there isn’t any argument for Sam not having legs, the Argument Comparison module asserts into the heuristic-level knowledge base that Sam has legs. In turn, this assertion produces a binding list for the free variable x in the formula that we Asked, above; namely, ((x . Legs)) . Repeated calls to Ask can be made and will result in additional bindings for x. We now tell the systems that as a default, Reptiles don’t have legs. The tell-ask interface translates this assertion into an inheritance axiom: (assert ‘(#%LogImplication (#%LogAnd (#%allInstanceOf x #%Reptile) (#%LogNot (#%abnormal x “reptile-with-leg"))) (#%LogNot (#%hasPartTypes x #%Legs)))) . We now tell Cyc that Sam is a snake, and (in case it didn’t know already) that snakes are reptiles, and again ask the system if Sam has legs. (assert ‘(#%allGenls #%Snake #%Reptile)) (assert ‘(#%allInstanceOf #%Sam #%Snake)) (ask ‘(#%hasPartTypes #%Sam #%Legs)) . Even though the system previously asserted that Sam had legs, the addition of the inheritance caused this conclusion to be marked as potentially stale. Thus, when we ask this query, the argument generator tries to search for an argument for the negation of the query and, sure enough, finds one. Now we have an argument for Sam having legs based on his being a land animal and an argument for Sam not having legs based on his being a reptile. The argument comparator chooses the more specific one and concludes (and asserts into the heuristic-level knowledge base) that Sam does not have legs.

Figure 3. An Example of Interaction between the User, the Epistemological Level, the Tell-Ask Interface, and the Heuristic Level. The example is intentionally very simple and is meant to be clear rather than typical of the sophisticated inferencing that Cyc performs.

be inherited or otherwise inferred rather than powerful—and might be—but have not been have to go through (in our current case) tested on many examples. Having a knowl- 40,000+ separate episodes of pondering and edge base with a wide scope (not just size) on entering a +, -, or 0 entry. which to test these theories would be useful. One vital collaboration is that with Elaine One example is the work of Devika Subrama- Rich and Jim Barnett at MCC, namely, the nian, now at Cornell University, who is test- natural language understanding project ing her reformulation ideas in Cyc. described in Barnett et al. (1990). Here, the Other ongoing research collaborations Cyc knowledge base is stressed to its limits to include coupling with large engineering disambiguate word senses, resolve anaphoric knowledge bases (with Ed Feigenbaum and and omitted references, interpret the mean- Tom Gruber at ) and large ing of ellipses, and so on. Only so much can databases (with Stuart Russell and Mike be done with syntactic analysis and discourse Stonebraker at University of California at rules; the rest must be handed to Cyc, which Berkeley), standardizing knowledge inter- creates various alternate hypothetical worlds change formats (with Mike Genesereth at and decides how (im)plausible each one is, Stanford), axiomatizing human emotions for example, by seeing how metonymical the (with John McCarthy at Stanford), develop- speaker would have to be in each possible ing machine learning (with Wei-Min Shen world for no real-world constraints to be and Mark Derthick at MCC), and using quali- violated. tative physics and analogy in children’s sto- A number of theories in AI seem rather ries (with Ken Forbus). We are also engaged in

56 AI MAGAZINE Articles informal collaborations with , , and others. . . . the role of humans would become much Conclusion more like tutors . . . What do we hope to get from our efforts? Where do we hope to be by the end of the 1990s? Here are three possible levels of suc- cess, in increasing order of optimism: Good: Although not directly built on and widely used, the Cyc research might still pro- vide some insights into issues involved in in this article: the Cyc project’s expected life building large commonsense knowledge expectancy and mode of demise. We expect bases. Perhaps, it would give us an indication to increasingly rely on knowledge-based natu- about whether the symbolic paradigm is ral language understanding (KBNL) as the flawed and, if so, how. It might also yield a means of clarifying apparent contradictions rich repertoire of “how to represent it” heuris- and gaps in the knowledge base, and we tics and might at least motivate research expect to rely increasingly on knowledge- issues in building future AI systems. based machine learning (KBML) as the means Better: Cyc forms the core of a knowledge of identifying these unexpected regularities base that can be used by the next generation and irregularities in the knowledge base. Both of AI research programs to help make them KBNL and KBML can gradually become more more than theoretical exercises. No one doing and more important ways of entering new research in symbolic AI in the early twenty- knowledge into the knowledge base. These first century would want to be without a copy projects have already begun, but it’s too early of Cyc, any more than today’s researchers to look for signs of the ramp up. This particu- would want to be without Eval. lar corner is one we expect to turn in the Best: Cyc’s knowledge base serves as the middle part of this decade, with KBNL becom- foundation for the first true AI agent. It is ing the dominant mode of knowledge acqui- something on which full-fledged natural lan- sition for Cyc and KBML becoming the guage understanding systems, expert systems, dominant mode of policing the growing and machine learning systems can be built. knowledge base. The role of human knowl- No one in 2015 would dream of buying a edge enterers today, manually entering asser- machine without common sense, any more tion after assertion, is akin to teachers who than anyone today would buy a personal must instruct by surgically manipulating computer that couldn’t run spreadsheets, brains. Turning the corner would mean that word processing programs, communications the role of humans would become much software, and so on. more like tutors, with a great deal of question Numerous projects are under way in Japan answering going on in both directions. Much and Great Britain and in this country at of the work in this coming decade will be Carnegie-Mellon University, USC/Information driven by use as humans and application pro- Institute, Stanford, and elsewhere grams exercise Cyc and rely on it more and that appear similar to Cyc in some ways, but more as a substrate for intelligent behavior. each of them has traded breadth and scope for an increased chance of success at this nar- Acknowledgments rowed goal (for example, several of these pro- We would like to thank Mary Shepherd for jects have some form of limited machine her patience and help since the inception of translation as their goal). the Cyc project. We also want to thank Mark Do we have a good chance of achieving our Derthick, Karen Pittman, Dexter Pratt, David better goal? Because of our clipping of repre- Wallace, Nick Siegel, Wanda Pratt, John Huff- sentation thorns and stabilizing of the repre- man, and the other members of the Cyc sentation language, inference engine suite, group, past and present, for their help in and high-level ontology, we believe the building and testing the system. We also answer is “Yes.” At the least, we now expect thank Ed Feigenbaum, Pat Hayes, John that the body of knowledge we accumulate in McCarthy, John McDermott, Marvin Minsky, this decade will continue to exist, be used, and Stuart Russell, who have in almost and be extended for decades to come, with orthogonal ways helped us to think more much of this accretion being done semiauto- clearly about the material presented herein. matically. We also thank John McCarthy, Charles Petrie, We now come to the final area we address

FALL 1990 57 Articles

and Russ Greiner for reading earlier drafts of Knowledge-Based Systems. Reading, Mass.: Addison- this article and giving us numerous useful Wesley. comments. Lenat, D. B.; Prakash, M.; and Shepherd, M. 1986. Cyc: Using Common Sense Knowledge to Over- References come Brittleness and Knowledge-Acquisition Bot- tlenecks. AI Magazine 6:65–85. Allen, J. 1986. Maintaining Knowledge about Tem- poral Intervals. In Readings in Knowledge Representa- Lenat, D. B.; Guha, R. V.; Pittman, K.; Pratt, D.; and tion, eds. H. Levesque and R. Brachman, 509–523. Shepherd, M. 1990. Cyc: Toward Programs with San Mateo, Calif.: Morgan Kaufmann. Common Sense. Communications of the ACM 33(8). Lifschitz, V. 1987. Formal Theories of Action. In Barnett, J.; Knight, K.; Mani, I.; and Rich, E. 1990. Readings in Nonmonotonic Reasoning, ed. M. Gins- Knowledge and Natural Language Processing, Tech- berg, 410–432. San Mateo, Calif.: Morgan Kauf- nical Report ACT-NL-104-90, MCC Corp., Austin, mann. Tex. McCarthy, J. 1987a. Applications of Circumscrip- Brachman, R. J.; Fikes, R. E.; and Levesque, H. J. tion to Formalizing Common Sense Knowledge. In 1986. Krypton: A Functional Approach to Knowl- Readings in Nonmonotonic Reasoning, ed. M. Gins- edge Representation. In Readings in Knowledge Rep- berg, 153–166. San Mateo, Calif.: Morgan Kauf- resentation, eds. H. Levesque and R. Brachman, mann. 411–431. San Mateo, Calif.: Morgan Kaufmann. McCarthy, J. 1987b. Generality in Artificial Intelli- Cohen, P. R., and Loiselle, C. L. 1988. Beyond isa: gence. Communications of the ACM 30(12): Structures for Plausible Inference in Semantic Net- 1030–1035. works. In Proceedings of the Seventh National McCarthy, J. 1986a. Epistemological Problems of Conference on . Menlo Park, Artificial Intelligence. In Readings in Knowledge Rep- Calif.: American Association for Artificial Intelli- resentation, eds. H. Levesque and R. Brachman, gence. 23–31. San Mateo, Calif.: Morgan Kaufmann. Corbell, J. C. 1987. The Visual Dictionary. New York: McCarthy, J. 1986b. First-Order Theories of Individ- Facts on File. ual Concepts and Propositions. In Readings in Derthick, M. 1990. An Epistemological Level Inter- Knowledge Representation, eds. H. Levesque and R. face for Cyc, Technical Report ACT-CYC-084-90, Brachman, 523–531. San Mateo, Calif.: Morgan MCC Corp., Austin, Tex. Kaufmann. Doyle, J. 1987. A Truth Maintenance System. In McCarthy, J., and Hayes, P. J. 1987. Some Philo- Readings In Nonmonotonic Reasoning, ed. M. Gins- sophical Problems from the Standpoint of AI. In berg, 259–279. San Mateo, Calif.: Morgan Kauf- Readings in Nonmonotonic Reasoning, ed. M. Gins- mann. berg, 26–45. San Mateo, Calif.: Morgan Kaufmann. Ginsberg, M. 1987. Multivalued . In Readings Moore, R. C. 1986. The Role of Logic in Knowledge in Nonmonotonic Reasoning, ed. M. Ginsberg, Representation and . In 251–256. San Mateo, Calif.: Morgan Kaufmann. Readings in Knowledge Representation, eds. H. Levesque and R. Brachman, 335–343. San Mateo, Guha, R. V. 1990a. Contexts in Cyc, Technical Calif.: Morgan Kaufmann. Report ACT-CYC-129-90, MCC Corp., Austin, Tex. Pratt, D., and Guha, R. V. 1990. A Functional Inter- Guha, R. V. 1990b. The Representation of Defaults face for Cyc, Technical Report ACT-CYC-089-90, in Cyc, Technical Report ACT-CYC-083-90, MCC MCC Corp., Austin, Tex. Corp., Austin, Tex. Quine, W. V. 1969. Natural Kinds. In Ontological Guha, R. V., and Lenat, D. B. 1989a. Cycl: The Cyc Relativity and Other Essays (chapter 5). New York: Representation Language, Part 3, Technical Report Columbia University Press. ACT-CYC-454-89, MCC Corp., Austin, Tex. Soloway, E.; Bachant, J.; and Jensen, K. 1987. Guha, R. V., and Lenat, D. B. 1989b. The World Assessing the Maintainability of Xcon-in-Rime: according to Cyc, Part 2: Agents and Institutions, Coping with the Problem of a Very Large Rule Base. Technical Report ACT-CYC-453-89, MCC Corp., In Proceedings of the Sixth National Conference on Austin, Tex. Artificial Intelligence, 9824–9829. Menlo Park, Guha, R. V., and Levy, A. 1990. A Relevance-Based Calif.: American Association for Artificial Intelli- Meta Level, Technical Report ACT-CYC-040-90, gence. MCC Corp., Austin, Tex. Touretsky, D. S. 1987. Implicit Ordering of Defaults Hayes, P. J. 1985. Naive Physics 1: Ontology for Fiq- in Inheritance Systems. In Readings in Nonmonoton- uids. In Formal Theories of the Common Sense World ic Reasoning, ed. M. Ginsberg, 106–109. San Mateo, (chapter 3), eds. J. R. Hobbs and R. C. Moore. Nor- Calif.: Morgan Kaufmann. wood, N.J.: Ablex. Warren, D. H. D. 1983. An Abstract Prolog Instruc- Huhns, M., and Stephens, L. 1988. Extended Com- tion Set, Technical Report 309, SRI, Artificial Intelli- position of Relations, Technical Report ACA-AI- gence Center, Computer Science and Technology 376-88, MCC Corp., Austin, Tex. Center, Menlo Park, Calif. Lenat, D. B., and Guha, R. V. 1990. Building Large Weyhrauch, R. W. 1986. Prolegmena to a Theory of

58 AI MAGAZINE Articles

Mechanized Formal Reasoning. In Readings in FredIn (1972) might like EthelIn (1958) more than Knowledge Representation, eds. H. Levesque and R. EthelIn (1972). Brachman, 309–329. San Mateo, Calif.: Morgan 12. This use of the term agent is unrelated to the Kaufmann. linguists’ usage, as in “‘Kettle’ is the agent in ‘The kettle whistled’.” Notes 13. Rather than go through a lengthy presentation of some of the ways in which the Cyc ontology has 1. A shortened version of portions of this paper changed over time, we refer the reader to the previ- appeared in Communications of the ACM, Vol. 33, ous section, The Current State of Cyc’s Ontology, No. 8, Copyright 1990, Association for Computing wherein the nature and salient aspects of our fairly Machinery, Inc. By permission. adequate solutions should become apparent. 2. All the material presented on the language and 14. Unless otherwise noted, the ontology has been implemented and is in use each of them is fully imple- in the Cyc system unless otherwise mentioned. In a mented and in routine daily number of places in this article, we have omitted use. the axioms and other details. They have been worked out and in most cases are available in one of the references or can be obtained from the authors. 3. Because it includes facilities to form the set of R. V. Guha is the co-leader objects x satisfying a given property P(x), our lan- of the Cyc project and a guage is closer to Zermelo-Frankel (ZF) than to first- Ph.D. student at Stanford order predicate calculus (FOPC). University. 4. The isa predicate corresponds to the set-member- ship relation; it is sometimes called ISA, is-a, AKO, element-of, and so on. In Cyc’s knowledge base, we happen to call it instanceOf. Also, the abi predicates are short for abnormal in fashion i; so abi corre- sponds to being an exception in the sense of being a bird and not being able to fly. One Cyc axiom says that birds with broken wings are abnormal in sense abi . 5. ist(x,y) means x is true in theory y. Moreover, although supported, falls, and so on, are fluent is principal valued functions, in this article, we often refer to scientist at Microelectronics them as predicates; the intended meaning should and Computer Technology always be clear from the context. Corporation (MCC). He was 6. Although in most cases, we use the term ontolo- a professor in the Computer Science Departments gy in the sense of the objects that can be quantified at Carnegie-Mellon University and Stanford Univer- over, we occasionally use it in a looser sense of the sity prior to his move to MCC and remains a con- organization and structure of the knowledge base sulting professor and industrial lecturer at Stanford or even the predicates and objects in the epistemo- today. His Ph.D. thesis (Stanford, 1976) was a logical-level language. demonstration that certain kinds of creative discov- 7. The same predicate can appear with different ari- eries in mathematics could be produced by a com- ties and argument types in different microtheories. puter program. This work earned him the biannual International Joint Conference on Artificial Intelli- 8. We used to, but they were never much use. Col- gence, Inc., biannual Computers and Thought lections of collections, however, such as PersonType, award in 1977. He was also named one of America’s SubstanceType, and EventType, have proven vital brightest scientists under the age of 40 by Science They are analogous to object-oriented systems’ Digest in December 1984. Lenat has authored and metaclasses. coauthored more than 50 published papers and has 9. The subabstraction formalism is superficially sim- written and edited several books, including Knowl- ilar to the histories framework (Hayes 1985). How- edge-Based Systems in Artificial Intelligence; Building ever, there is no relation between the intersection Expert Systems; and, most recently, Building Large of these histories and the (McCarthy Knowledge-Based Systems: Representation and Inference and Hayes 1987). in the Cyc Project. He is an editor for IEEE Transac- 10. The interval-based abstraction was developed tions on Knowledge and Data Engineering and the independently of Allen (1986). Machine Learning Journal and was a cofounder of 11. There are, of course, exceptions. For example, Teknowledge, Inc. His main research interest is in getting machines to discover new knowledge, an interest that has led him to work on a large com- monsense knowledge base.

FALL 1990 59