Cyc uses around 37,000 different event types to describe what happens in the world. This large number includes events that range from the extremely general to the extremely specific. The extremely specific events might only be used once because they were created for a very specific situation and therefore involve a large number of qualifiers. For example, the sub-collection of all events in which garbage containing an explosive part has been disposed of by encasing in….
The slide lists common, everyday event types that are self-explanatory. To use them, you would represent a particular instance of an event and then represent the relationships of the participants in that event via predicates called Actor Slots. We’ll review some examples of this after a few more slides.
In Cyc, “roles” and “actor slots” are used to describe the kinds of things listed on this slide. “Objects destroyed” includes objects that you can’t get back out once you put them in. For example, eggs are destroyed in the #$BakingACake event. Think of facilitating objects as helpers, or assistants. For example, an electric mixer is a facilitating object in the #$BakingACake event. Slots (predicates) of motion and location are used when describing moving events, as in moving an egg from a carton to the bowl. The beneficiary is the recipient in an event.
Refer to the slide for an example of a particular instance of an action. The following two slides will diagram how we use roles and actor slots in representing this action.
First of all, Cyc represents events by relating the event to its participants (not by relating participants to each other). Therefore, this diagram shows Clobbering14 in the center with all other aspects, or actor slots, related directly to the event, not to other aspects of the event. #$performedBy is an actor slot that is used to relate Moe to Clobbering 14. This is like saying “Clobbering, Moe did it” and “Clobbering, Curly received it”as opposed to “Moe clobbered Curly.” Because Cyc describes events in this manner, we must have very specific ways of representing roles and actor slots. Cyc has over 200 role and actor slot predicates.
Clobbering14 would be an instance of the event that would be called #$Clobbering. It is crucial that events be described in terms of a particular instance and not the event in general because Cyc links participants (performers, victims, etc.) to each particular event. Therefore, events must be reified (represented in the knowledge base with a particular name).
Because we describe events in Cyc in terms of a particular instance and not the event in general, roles and subevents allow us to represent more about an event. Consider the Krebs Process, a kind of biochemical process in which any instance of the process will be represented by multiple subevents related to a parent event. The first subevent creates an output that becomes an input to the second subevent. The second subevent destroys that input. So the same object (the black ball in the diagram on the slide) uses a different ActorSlot predicate (output/input) for each of the different subevents it relates to.
- Cyc has a large variety of predicates for representing roles preformed in events and the actors who perform them.
- Events are represented by relating actors to the event.
- The product of one sub-event in the input to another.
This concludes the lesson on event types in Cyc.