Queries within Microtheories

The assertions in Cyc® are grouped into microtheories, and inference is only performed within the currently specified microtheory. The most general microtheory is #$BaseKB. Thus any assertion accessible in the #$BaseKB is accessible from every other microtheory. Assertions which are not in the current microtheory (or the ones upon which it is based (via #$genlMt)) are not considered when answering the query.

For example, the following query attempts to find geographical regions containing Texas.:

 

     (#$isa ?X #$USCity)

Which yields:

Last query in BaseKB :
(isa ?X USCity)
 

Query halted because : Search space was exhausted.
 

No answers

This means that nothing was found. Most geographical information is asserted in geography-oriented microtheories, the most general of which is #$GeographyMt.

Since the information we want is relevant to the geography of the United States, let's try looking in the #$UnitedStatesGeographyMt. Above theFormula: input field, there is a field labeled Mt:. Type "UnitedStatesGeographyMt" (the "#$" prefix is optional in this field) in that field and try the query again. This time, the result should look like this:

Answer ?X


[Explain] CityOfWashingtonDC

 

In a KB with more information about US geography, this list of answers would be much longer. Try performing this query within the #$InferencePSC microtheory. You should get the same answer unless you have added information about other states in a microtheory other than #$UnitedStatesGeographyMt