... than made a precondition of asserting a predication
Why make a role, which is played as a consequence of a
relationship, a presupposition for playing the role in the
OpenCyc currently demands in BaseKB that (arg2Isa
It would suffice to demand (arg2Isa capitalCity City).
A rule can then infer what was presupposed:
(implies (capitalCity ?X ?Y) (isa ?Y CapitalCityOfRegion)).
In addition the following rule holds:
(implies ((isa ?Y CapitalCityOfRegion) (thereExists ?X
(capitalCity ?X ?Y)))
Therefore CapitalCityOfRegion can be defined as
(SubcollectionOfWithRelationFromTypeFn City capitalCity