When doing knowledge-entry, it is sometimes desireable to hypothesize a formula to the KB. This is sort of like saying, "What if proposition P were true?"
When a formula is hypothesized to CYC® in a particular #$Microtheory, CYC® creates constants for any variables, and treats the resulting assertion(s) as true. For example, if the following formula were hypothesized in the #$BiologyMt:
(#$and (#$isa ?DOG #$Dog) (#$isa ?CAT #$Cat) (#$enemies ?DOG ?CAT))two things would happen:
#$HYP-DOG-42375192581 #$HYP-CAT-8479329834The "HYP" shows that the constant was created through hypothesizing (as opposed to being created by a user, or through skolemizing). The number at the end is used to uniquely identify the new constant. Remember that an #$Individual dog and an individual cat are being hypothesized here, not a #$Collection, and CYC® may hypothesize many over time. So the number is needed to set each new instance apart from prior ones.
(#$isa #$HYP-DOG-42375192581 #$Dog) (#$isa #$HYP-CAT-8479329834 #$Cat) (#$enemies #$HYP-DOG-42375192581 #$HYP-CAT-8479329834))In other words, the two new individual animals created are enemies of each other. Note that we have NOT said that all cats and dogs are enemies, only that these two particular ones are.
Enter the formula to be hypothesized in the "Formula" input window, as in the example above. Note that conjunctions and atomic formulas make the best hypothesized formulas. Use the [Complete] button on any partial constant being entered in the window.
In the "Mt" input window, enter the #$Microtheory (Mt) where the results of the hypothesizing should go (minus the "#$"), using the [Complete] button if necessary. The default Mt is the #$BaseKB.
Press the [Hypothesize] button to hypothesize the formula in the desired microtheory.
The [Reset Values] button will return both input windows to their initial settings.