©Ò¦³ (forall)
The universal quantifier of predicate logic.
Ontology
SUMO / STRUCTURAL-ONTOLOGYClass(es)
Coordinate term(s)
Y¥B°ßY
Y
©M
±Àª¾
¦s¦b
«D
©Î
Type restrictions
forall(§Ç¦C, SUO-KIFªíz¦¡)
Related WordNet synsets
See more related synsets on a separate page.
Axioms (114)
If rel1 ¬O rel2 ªº ˧Ç, then for all inst1,inst2 holds: rel1(inst1,inst2) (¤£) ¦¨¥ßs if and only if rel2(inst2,inst1) (¤£) ¦¨¥ßs.
(=>
(inverse ?REL1 ?REL2)
(forall
(?INST1 ?INST2)
(<=>
(holds ?REL1 ?INST1 ?INST2)
(holds ?REL2 ?INST2 ?INST1))))
subclass ¬O class ªº ¦¸ºØÃþ if and only if
(<=>
(subclass ?SUBCLASS ?CLASS)
(and
(instance ?SUBCLASS SetOrClass)
(instance ?CLASS SetOrClass)
(forall
(?INST)
(=>
(instance ?INST ?SUBCLASS)
(instance ?INST ?CLASS)))))
If thing1 µ¥©ó thing2, then for all attr holds: thing1 ¦³ ÄÝ©Ê attr if and only if thing2 ¦³ ÄÝ©Ê attr.
(=>
(equal ?THING1 ?THING2)
(forall
(?ATTR)
(<=>
(property ?THING1 ?ATTR)
(property ?THING2 ?ATTR))))
If attr1 µ¥©ó attr2, then for all thing holds: thing ¦³ ÄÝ©Ê attr1 if and only if thing ¦³ ÄÝ©Ê attr2.
(=>
(equal ?ATTR1 ?ATTR2)
(forall
(?THING)
(<=>
(property ?THING ?ATTR1)
(property ?THING ?ATTR2))))
If thing1 µ¥©ó thing2, then for all class holds: thing1 ¬O class ªº ¹ê¨Ò if and only if thing2 ¬O class ªº ¹ê¨Ò.
(=>
(equal ?THING1 ?THING2)
(forall
(?CLASS)
(<=>
(instance ?THING1 ?CLASS)
(instance ?THING2 ?CLASS))))
If class1 µ¥©ó class2, then for all thing holds: thing ¬O class1 ªº ¹ê¨Ò if and only if thing ¬O class2 ªº ¹ê¨Ò.
(=>
(equal ?CLASS1 ?CLASS2)
(forall
(?THING)
(<=>
(instance ?THING ?CLASS1)
(instance ?THING ?CLASS2))))
If rel1 µ¥©ó rel2, then for all holds: rel1() (¤£) ¦¨¥ßs if and only if rel2() (¤£) ¦¨¥ßs.
(=>
(equal ?REL1 ?REL2)
(forall
(@ROW)
(<=>
(holds ?REL1 @ROW)
(holds ?REL2 @ROW))))
- if list1 µ¥©ó list2,
- then if list1 µ¥©ó "()" and list2 µ¥©ó "()", then for all number holds: ""()" ªº ²Ä¤G ¤¸¯À" µ¥©ó ""()" ªº ²Ä¤G ¤¸¯À"
.
(=>
(equal ?LIST1 ?LIST2)
(=>
(and
(equal
?LIST1
(ListFn @ROW1))
(equal
?LIST2
(ListFn @ROW2)))
(forall
(?NUMBER)
(equal
(ListOrderFn
(ListFn @ROW1)
?NUMBER)
(ListOrderFn
(ListFn @ROW2)
?NUMBER)))))
class1 µL¥æ¶° ©ó class2 if and only if
(<=>
(disjoint ?CLASS1 ?CLASS2)
(and
(instance ?CLASS1 SetOrClass)
(instance ?CLASS2 SetOrClass)
(forall
(?INST)
(not
(and
(instance ?INST ?CLASS1)
(instance ?INST ?CLASS2))))))
- if ¹ï¥ß©ó ?,
- then for all attr1,attr2 holds:
- if attr1 µ¥©ó ""()" ªº ²Ä¤G ¤¸¯À" and attr2 µ¥©ó ""()" ªº ²Ä¤G ¤¸¯À" and number1 µ¥©ó number2,
- then if obj ¦³ ÄÝ©Ê attr1, then obj ¦³ ÄÝ©Ê attr2
.
(=>
(contraryAttribute @ROW)
(forall
(?ATTR1 ?ATTR2)
(=>
(and
(equal
?ATTR1
(ListOrderFn
(ListFn @ROW)
?NUMBER1))
(equal
?ATTR2
(ListOrderFn
(ListFn @ROW)
?NUMBER2))
(not
(equal ?NUMBER1 ?NUMBER2)))
(=>
(property ?OBJ ?ATTR1)
(not
(property ?OBJ ?ATTR2))))))
- if ½aºÉªºÄÝ©Ê,
- then for all obj holds: if attr1 ¬O class ªº ¹ê¨Ò, then there exists attr2 so that attr2 ¬O "()" ªº ¤@ ¦¨û and attr1 µ¥©ó attr2
.
(=>
(exhaustiveAttribute ?CLASS @ROW)
(forall
(?OBJ)
(=>
(instance ?ATTR1 ?CLASS)
(exists
(?ATTR2)
(and
(inList
?ATTR2
(ListFn @ROW))
(equal ?ATTR1 ?ATTR2))))))
- if attr1 ¬O attr2 ªº ¦¸ÄÝ©Ê,
- then for all obj holds: if obj ¦³ ÄÝ©Ê attr1, then obj ¦³ ÄÝ©Ê attr2
.
(=>
(subAttribute ?ATTR1 ?ATTR2)
(forall
(?OBJ)
(=>
(property ?OBJ ?ATTR1)
(property ?OBJ ?ATTR2))))
- if substance1 ¬O substance2 ªº ¤@¤p³¡¤À,
- then for all class holds: if substance1 ¬O class ªº ¹ê¨Ò, then substance2 ¬O class ªº ¹ê¨Ò
.
(=>
(piece ?SUBSTANCE1 ?SUBSTANCE2)
(forall
(?CLASS)
(=>
(instance ?SUBSTANCE1 ?CLASS)
(instance ?SUBSTANCE2 ?CLASS))))
- if atom ¬O ì¤l ªº ¹ê¨Ò,
- then for all nucleus1,nucleus2 holds: if nucleus1 ¬O atom ªº ¤¸¥ó and nucleus2 ¬O atom ªº ¤¸¥ó and nucleus1 ¬O ì¤l®Ö ªº ¹ê¨Ò and nucleus2 ¬O ì¤l®Ö ªº ¹ê¨Ò, then nucleus1 µ¥©ó nucleus2
.
(=>
(instance ?ATOM Atom)
(forall
(?NUCLEUS1 ?NUCLEUS2)
(=>
(and
(component ?NUCLEUS1 ?ATOM)
(component ?NUCLEUS2 ?ATOM)
(instance ?NUCLEUS1 AtomicNucleus)
(instance ?NUCLEUS2 AtomicNucleus))
(equal ?NUCLEUS1 ?NUCLEUS2))))
coll1 ¬O coll2 ªº ¥¿ ¦¸»E¶° if and only if - coll1 ¬O ¸s¶° ªº ¹ê¨Ò
and - coll2 ¬O ¸s¶° ªº ¹ê¨Ò
and - for all member holds: if member ¬O coll1ªº ¦¨û, then member ¬O coll2ªº ¦¨û
.
(<=>
(subCollection ?COLL1 ?COLL2)
(and
(instance ?COLL1 Collection)
(instance ?COLL2 Collection)
(forall
(?MEMBER)
(=>
(member ?MEMBER ?COLL1)
(member ?MEMBER ?COLL2)))))
"class ªº ´yz" µ¥©ó attr if and only if for all inst holds: inst ¬O class ªº ¹ê¨Ò if and only if inst ¦³ ÄÝ©Ê attr.
(<=>
(equal
(AbstractionFn ?CLASS)
?ATTR)
(forall
(?INST)
(<=>
(instance ?INST ?CLASS)
(property ?INST ?ATTR))))
rel ¬O ³æÈÃö«Y ªº ¹ê¨Ò if and only if for all ,item1,item2 holds: if rel(,item1) (¤£) ¦¨¥ßs and rel(,item2) (¤£) ¦¨¥ßs, then item1 µ¥©ó item2.
(<=>
(instance ?REL SingleValuedRelation)
(forall
(@ROW ?ITEM1 ?ITEM2)
(=>
(and
(holds ?REL @ROW ?ITEM1)
(holds ?REL @ROW ?ITEM2))
(equal ?ITEM1 ?ITEM2))))
rel ¬O ¥þÈÃö«Y ªº ¹ê¨Ò if and only if there exists valence so that rel ¬O Ãö«Y ªº ¹ê¨Ò and rel %&¦³ ½×¤¸(s) valence and - if for all number,element,class holds: if number ¤p©ó valence and rel ªº ½×¤¸ number ¬O class ªº ¹ê¨Ò and element µ¥©ó ""()" ªº ²Ä¤G ¤¸¯À", then element ¬O class ªº ¹ê¨Ò,
- then there exists item so that rel(,item) (¤£) ¦¨¥ßs
.
(<=>
(instance ?REL TotalValuedRelation)
(exists
(?VALENCE)
(and
(instance ?REL Relation)
(valence ?REL ?VALENCE)
(=>
(forall
(?NUMBER ?ELEMENT ?CLASS)
(=>
(and
(lessThan ?NUMBER ?VALENCE)
(domain ?REL ?NUMBER ?CLASS)
(equal
?ELEMENT
(ListOrderFn
(ListFn @ROW)
?NUMBER)))
(instance ?ELEMENT ?CLASS)))
(exists
(?ITEM)
(holds ?REL @ROW ?ITEM))))))
If rel ¬O «D¤Ï¨Ãö«Y ªº ¹ê¨Ò, then for all inst holds: rel(inst,inst) not(¤£) ¦¨¥ß.
(=>
(instance ?REL IrreflexiveRelation)
(forall
(?INST)
(not
(holds ?REL ?INST ?INST))))
- if rel ¬O ¹ïºÙÃö«Y ªº ¹ê¨Ò,
- then for all inst1,inst2 holds: if rel(inst1,inst2) (¤£) ¦¨¥ßs, then rel(inst2,inst1) (¤£) ¦¨¥ßs
.
(=>
(instance ?REL SymmetricRelation)
(forall
(?INST1 ?INST2)
(=>
(holds ?REL ?INST1 ?INST2)
(holds ?REL ?INST2 ?INST1))))
- if rel ¬O ¤Ï¹ïºÙÃö«Y ªº ¹ê¨Ò,
- then for all inst1,inst2 holds: if rel(inst1,inst2) (¤£) ¦¨¥ßs and rel(inst2,inst1) (¤£) ¦¨¥ßs, then inst1 µ¥©ó inst2
.
(=>
(instance ?REL AntisymmetricRelation)
(forall
(?INST1 ?INST2)
(=>
(and
(holds ?REL ?INST1 ?INST2)
(holds ?REL ?INST2 ?INST1))
(equal ?INST1 ?INST2))))
If rel ¬O ¤T¨¤Ãö«Y ªº ¹ê¨Ò, then for all inst1,inst2 holds: rel(inst1,inst2) (¤£) ¦¨¥ßs or inst1 µ¥©ó inst2 or rel(inst2,inst1) (¤£) ¦¨¥ßs.
(=>
(instance ?REL TrichotomizingRelation)
(forall
(?INST1 ?INST2)
(or
(holds ?REL ?INST1 ?INST2)
(equal ?INST1 ?INST2)
(holds ?REL ?INST2 ?INST1))))
- if rel ¬O ¥i»¼Ãö«Y ªº ¹ê¨Ò,
- then for all inst1,inst2,inst3 holds: if rel(inst1,inst2) (¤£) ¦¨¥ßs and rel(inst2,inst3) (¤£) ¦¨¥ßs, then rel(inst1,inst3) (¤£) ¦¨¥ßs
.
(=>
(instance ?REL TransitiveRelation)
(forall
(?INST1 ?INST2 ?INST3)
(=>
(and
(holds ?REL ?INST1 ?INST2)
(holds ?REL ?INST2 ?INST3))
(holds ?REL ?INST1 ?INST3))))
- if rel ¬O «D¥i»¼Ãö«Y ªº ¹ê¨Ò,
- then for all inst1,inst2,inst3 holds: if rel(inst1,inst2) (¤£) ¦¨¥ßs and rel(inst2,inst3) (¤£) ¦¨¥ßs, then rel(inst1,inst3) not(¤£) ¦¨¥ß
.
(=>
(instance ?REL IntransitiveRelation)
(forall
(?INST1 ?INST2 ?INST3)
(=>
(and
(holds ?REL ?INST1 ?INST2)
(holds ?REL ?INST2 ?INST3))
(not
(holds ?REL ?INST1 ?INST3)))))
If rel ¬O ¥þ§ÇÃö«Y ªº ¹ê¨Ò, then for all inst1,inst2 holds: rel(inst1,inst2) (¤£) ¦¨¥ßs or rel(inst2,inst1) (¤£) ¦¨¥ßs.
(=>
(instance ?REL TotalOrderingRelation)
(forall
(?INST1 ?INST2)
(or
(holds ?REL ?INST1 ?INST2)
(holds ?REL ?INST2 ?INST1))))
- if list ¬O §Ç¦C ªº ¹ê¨Ò,
- then there exists number1 so that there exists item1 so that "list ªº ²Ä¤G ¤¸¯À" µ¥©ó item1 and for all number2 holds: if number2 ¬O ¥¿¾ã¼Æ ªº ¹ê¨Ò and number2 ¤p©ó number1, then there exists item2 so that "list ªº ²Ä¤G ¤¸¯À" µ¥©ó item2
.
(=>
(instance ?LIST List)
(exists
(?NUMBER1)
(exists
(?ITEM1)
(and
(not
(equal
(ListOrderFn ?LIST ?NUMBER1)
?ITEM1))
(forall
(?NUMBER2)
(=>
(and
(instance ?NUMBER2 PositiveInteger)
(lessThan ?NUMBER2 ?NUMBER1))
(exists
(?ITEM2)
(equal
(ListOrderFn ?LIST ?NUMBER2)
?ITEM2))))))))
list ¬O °ß¤@§Ç¦C ªº ¹ê¨Ò if and only if for all number1,number2 holds: if "list ªº ²Ä¤G ¤¸¯À" µ¥©ó "list ªº ²Ä¤G ¤¸¯À", then number1 µ¥©ó number2.
(<=>
(instance ?LIST UniqueList)
(forall
(?NUMBER1 ?NUMBER2)
(=>
(equal
(ListOrderFn ?LIST ?NUMBER1)
(ListOrderFn ?LIST ?NUMBER2))
(equal ?NUMBER1 ?NUMBER2))))
- if class ³Q ¥]§t,
- then for all obj holds: if obj ¬O class ªº ¹ê¨Ò, then there exists item so that item ¬O "()" ªº ¤@ ¦¨û and obj ¬O item ªº ¹ê¨Ò
.
(=>
(exhaustiveDecomposition ?CLASS @ROW)
(forall
(?OBJ)
(=>
(instance ?OBJ ?CLASS)
(exists
(?ITEM)
(and
(inList
?ITEM
(ListFn @ROW))
(instance ?OBJ ?ITEM))))))
- if class µL¥æ¶°¦a ¤À¸Ñ¦¨ ,
- then for all item holds: if item ¬O "()" ªº ¤@ ¦¨û, then item ¬O class ªº ¦¸ºØÃþ
.
(=>
(disjointDecomposition ?CLASS @ROW)
(forall
(?ITEM)
(=>
(inList
?ITEM
(ListFn @ROW))
(subclass ?ITEM ?CLASS))))
- if class µL¥æ¶°¦a ¤À¸Ñ¦¨ ,
- then for all item1,item2 holds: if item1 ¬O "()" ªº ¤@ ¦¨û and item2 ¬O "()" ªº ¤@ ¦¨û and item1 µ¥©ó item2, then item1 µL¥æ¶° ©ó item2
.
(=>
(disjointDecomposition ?CLASS @ROW)
(forall
(?ITEM1 ?ITEM2)
(=>
(and
(inList
?ITEM1
(ListFn @ROW))
(inList
?ITEM2
(ListFn @ROW))
(not
(equal ?ITEM1 ?ITEM2)))
(disjoint ?ITEM1 ?ITEM2))))
If list1 ¬O §Ç¦C ªº ¹ê¨Ò and list2 ¬O §Ç¦C ªº ¹ê¨Ò and for all number holds: "list1 ªº ²Ä¤G ¤¸¯À" µ¥©ó "list2 ªº ²Ä¤G ¤¸¯À", then list1 µ¥©ó list2.
(=>
(and
(instance ?LIST1 List)
(instance ?LIST2 List)
(forall
(?NUMBER)
(equal
(ListOrderFn ?LIST1 ?NUMBER)
(ListOrderFn ?LIST2 ?NUMBER))))
(equal ?LIST1 ?LIST2))
If "list ªº ªø«×" µ¥©ó number1, then for all number2 holds: there exists item so that "list ªº ²Ä¤G ¤¸¯À" µ¥©ó item if and only if number2 ¤p©ó©Îµ¥©ó number1.
(=>
(equal
(ListLengthFn ?LIST)
?NUMBER1)
(forall
(?NUMBER2)
(<=>
(exists
(?ITEM)
(equal
(ListOrderFn ?LIST ?NUMBER2)
?ITEM))
(lessThanOrEqualTo ?NUMBER2 ?NUMBER1))))
- if rel %&¦³ ½×¤¸(s) number,
- then for all holds: if rel() (¤£) ¦¨¥ßs, then ""()" ªº ªø«×" µ¥©ó number
.
(=>
(valence ?REL ?NUMBER)
(forall
(@ROW)
(=>
(holds ?REL @ROW)
(equal
(ListLengthFn
(ListFn @ROW))
?NUMBER))))
list3 µ¥©ó "list1 ©M list2 ²Õ¦¨ªº §Ç¦C" if and only if for all number1,number2 holds: if number1 ¤p©ó©Îµ¥©ó "list1 ªº ªø«×" and number2 ¤p©ó©Îµ¥©ó "list2 ªº ªø«×" and number1 ¬O ¥¿¾ã¼Æ ªº ¹ê¨Ò and number2 ¬O ¥¿¾ã¼Æ ªº ¹ê¨Ò, then "list3 ªº ²Ä¤G ¤¸¯À" µ¥©ó "list1 ªº ²Ä¤G ¤¸¯À" and "list3 ªº ²Ä¤G ¤¸¯À" µ¥©ó "list2 ªº ²Ä¤G ¤¸¯À".
(<=>
(equal
?LIST3
(ListConcatenateFn ?LIST1 ?LIST2))
(forall
(?NUMBER1 ?NUMBER2)
(=>
(and
(lessThanOrEqualTo
?NUMBER1
(ListLengthFn ?LIST1))
(lessThanOrEqualTo
?NUMBER2
(ListLengthFn ?LIST2))
(instance ?NUMBER1 PositiveInteger)
(instance ?NUMBER2 PositiveInteger))
(and
(equal
(ListOrderFn ?LIST3 ?NUMBER1)
(ListOrderFn ?LIST1 ?NUMBER1))
(equal
(ListOrderFn
?LIST3
(AdditionFn
(ListLengthFn ?LIST1)
?NUMBER2))
(ListOrderFn ?LIST2 ?NUMBER2))))))
- if list1 ¬O list2 ªº ¦¸§Ç¦C,
- then for all item holds: if item ¬O list1 ªº ¤@ ¦¨û, then item ¬O list2 ªº ¤@ ¦¨û
.
(=>
(subList ?LIST1 ?LIST2)
(forall
(?ITEM)
(=>
(inList ?ITEM ?LIST1)
(inList ?ITEM ?LIST2))))
- if list1 ¬O list2 ªº ¦¸§Ç¦C,
- then there exists number3 so that for all item holds: if item ¬O list1 ªº ¤@ ¦¨û, then there exist number1,number2 so that "list1 ªº ²Ä¤G ¤¸¯À" µ¥©ó item and "list2 ªº ²Ä¤G ¤¸¯À" µ¥©ó item and number2 µ¥©ó "(number1+number3)"
.
(=>
(subList ?LIST1 ?LIST2)
(exists
(?NUMBER3)
(forall
(?ITEM)
(=>
(inList ?ITEM ?LIST1)
(exists
(?NUMBER1 ?NUMBER2)
(and
(equal
(ListOrderFn ?LIST1 ?NUMBER1)
?ITEM)
(equal
(ListOrderFn ?LIST2 ?NUMBER2)
?ITEM)
(equal
?NUMBER2
(AdditionFn ?NUMBER1 ?NUMBER3))))))))
(=>
(initialList ?LIST1 ?LIST2)
(forall
(?NUMBER1 ?NUMBER2)
(=>
(and
(equal
(ListLengthFn ?LIST1)
?NUMBER1)
(lessThanOrEqualTo ?NUMBER2 ?NUMBER1))
(equal
(ListOrderFn ?LIST1 ?NUMBER2)
(ListOrderFn ?LIST2 ?NUMBER2)))))
- if fun ¬O ¤@¹ï¤@¨ç¼Æ ªº ¹ê¨Ò,
- then for all arg1,arg2 holds: if fun ªº ½×¤¸ ¬O class ªº ¹ê¨Ò and arg1 ¬O class ªº ¹ê¨Ò and arg2 ¬O class ªº ¹ê¨Ò and arg1 µ¥©ó arg2, then "fun(arg1)" µ¥©ó "fun(arg2)"
.
(=>
(instance ?FUN OneToOneFunction)
(forall
(?ARG1 ?ARG2)
(=>
(and
(domain ?FUN 1 ?CLASS)
(instance ?ARG1 ?CLASS)
(instance ?ARG2 ?CLASS)
(not
(equal ?ARG1 ?ARG2)))
(not
(equal
(AssignmentFn ?FUN ?ARG1)
(AssignmentFn ?FUN ?ARG2))))))
- if function ¬O Ãö³s¨ç¼Æ ªº ¹ê¨Ò,
- then for all inst1,inst2,inst3 holds: if function ªº ½×¤¸ ¬O class ªº ¹ê¨Ò and inst1 ¬O class ªº ¹ê¨Ò and inst2 ¬O class ªº ¹ê¨Ò and inst3 ¬O class ªº ¹ê¨Ò, then "function(inst1,"function(inst2,inst3)")" µ¥©ó "function("function(inst1,inst2)",inst3)"
.
(=>
(instance ?FUNCTION AssociativeFunction)
(forall
(?INST1 ?INST2 ?INST3)
(=>
(and
(domain ?FUNCTION 1 ?CLASS)
(instance ?INST1 ?CLASS)
(instance ?INST2 ?CLASS)
(instance ?INST3 ?CLASS))
(equal
(AssignmentFn
?FUNCTION
?INST1
(AssignmentFn ?FUNCTION ?INST2 ?INST3))
(AssignmentFn
?FUNCTION
(AssignmentFn ?FUNCTION ?INST1 ?INST2)
?INST3)))))
- if function ¬O ¥i´«¨ç¼Æ ªº ¹ê¨Ò,
- then for all inst1,inst2 holds: if function ªº ½×¤¸ ¬O class ªº ¹ê¨Ò and inst1 ¬O class ªº ¹ê¨Ò and inst2 ¬O class ªº ¹ê¨Ò, then "function(inst1,inst2)" µ¥©ó "function(inst2,inst1)"
.
(=>
(instance ?FUNCTION CommutativeFunction)
(forall
(?INST1 ?INST2)
(=>
(and
(domain ?FUNCTION 1 ?CLASS)
(instance ?INST1 ?CLASS)
(instance ?INST2 ?CLASS))
(equal
(AssignmentFn ?FUNCTION ?INST1 ?INST2)
(AssignmentFn ?FUNCTION ?INST2 ?INST1)))))
- if function «Ê³¬ ©ó class and function ¬O ¤@¤¸¨ç¼Æ ªº ¹ê¨Ò,
- then for all inst holds: if inst ¬O class ªº ¹ê¨Ò, then "function(inst)" ¬O class ªº ¹ê¨Ò
.
(=>
(and
(closedOn ?FUNCTION ?CLASS)
(instance ?FUNCTION UnaryFunction))
(forall
(?INST)
(=>
(instance ?INST ?CLASS)
(instance
(AssignmentFn ?FUNCTION ?INST)
?CLASS))))
- if function «Ê³¬ ©ó class and function ¬O ¤G¤¸¨ç¼Æ ªº ¹ê¨Ò,
- then for all inst1,inst2 holds: if inst1 ¬O class ªº ¹ê¨Ò and inst2 ¬O class ªº ¹ê¨Ò, then "function(inst1,inst2)" ¬O class ªº ¹ê¨Ò
.
(=>
(and
(closedOn ?FUNCTION ?CLASS)
(instance ?FUNCTION BinaryFunction))
(forall
(?INST1 ?INST2)
(=>
(and
(instance ?INST1 ?CLASS)
(instance ?INST2 ?CLASS))
(instance
(AssignmentFn ?FUNCTION ?INST1 ?INST2)
?CLASS))))
- if relation ¤ÏÀ³©ó class ,
- then for all inst holds: if inst ¬O class ªº ¹ê¨Ò, then relation(inst,inst) (¤£) ¦¨¥ßs
.
(=>
(reflexiveOn ?RELATION ?CLASS)
(forall
(?INST)
(=>
(instance ?INST ?CLASS)
(holds ?RELATION ?INST ?INST))))
- if relation «D¤Ï®g©ó class ,
- then for all inst holds: if inst ¬O class ªº ¹ê¨Ò, then relation(inst,inst) not(¤£) ¦¨¥ß
.
(=>
(irreflexiveOn ?RELATION ?CLASS)
(forall
(?INST)
(=>
(instance ?INST ?CLASS)
(not
(holds ?RELATION ?INST ?INST)))))
- if relation ¹ï class ¬O ¤T¤Àªk,
- then for all inst1,inst2 holds: if inst1 ¬O class ªº ¹ê¨Ò and inst2 ¬O class ªº ¹ê¨Ò, then relation(inst1,inst2) (¤£) ¦¨¥ßs or relation(inst2,inst1) (¤£) ¦¨¥ßs or inst1 µ¥©ó inst2
.
(=>
(trichotomizingOn ?RELATION ?CLASS)
(forall
(?INST1 ?INST2)
(=>
(and
(instance ?INST1 ?CLASS)
(instance ?INST2 ?CLASS))
(or
(holds ?RELATION ?INST1 ?INST2)
(holds ?RELATION ?INST2 ?INST1)
(equal ?INST1 ?INST2)))))
- if ¤À°t(function1,function2) holds,
- then for all inst1,inst2,inst3 holds: if function1 ªº ½×¤¸ ¬O class1 ªº ¹ê¨Ò and inst1 ¬O class1 ªº ¹ê¨Ò and inst2 ¬O class1 ªº ¹ê¨Ò and inst3 ¬O class1 ªº ¹ê¨Ò and function2 ªº ½×¤¸ ¬O class2 ªº ¹ê¨Ò and inst1 ¬O class2 ªº ¹ê¨Ò and inst2 ¬O class2 ªº ¹ê¨Ò and inst3 ¬O class2 ªº ¹ê¨Ò, then "function1(inst1,"function2(inst2,inst3)")" µ¥©ó "function2("function1(inst1,inst2)","function1(inst1,inst3)")"
.
(=>
(distributes ?FUNCTION1 ?FUNCTION2)
(forall
(?INST1 ?INST2 ?INST3)
(=>
(and
(domain ?FUNCTION1 1 ?CLASS1)
(instance ?INST1 ?CLASS1)
(instance ?INST2 ?CLASS1)
(instance ?INST3 ?CLASS1)
(domain ?FUNCTION2 1 ?CLASS2)
(instance ?INST1 ?CLASS2)
(instance ?INST2 ?CLASS2)
(instance ?INST3 ?CLASS2))
(equal
(AssignmentFn
?FUNCTION1
?INST1
(AssignmentFn ?FUNCTION2 ?INST2 ?INST3))
(AssignmentFn
?FUNCTION2
(AssignmentFn ?FUNCTION1 ?INST1 ?INST2)
(AssignmentFn ?FUNCTION1 ?INST1 ?INST3))))))
- if ¦¸Ãþ»F¦],
- then for all inst2 holds: if inst2 ¬O proc2 ªº ¹ê¨Ò, then there exists proc1 inst1 so that inst1 (¤£) ³y¦¨ inst2
.
(=>
(causesSubclass ?PROC1 ?PROC2)
(forall
(?INST2)
(=>
(instance ?INST2 ?PROC2)
(exists
(?INST1)
(and
(instance ?INST1 ?PROC1)
(causes ?INST1 ?INST2))))))
- if obj1 ¬O obj2 ªº ºë½T ½Æ»s,
- then for all attr holds: if attr ¬O obj1 ªº ÄÝ©Ê, then attr ¬O obj2 ªº ÄÝ©Ê
.
(=>
(copy ?OBJ1 ?OBJ2)
(forall
(?ATTR)
(=>
(attribute ?OBJ1 ?ATTR)
(attribute ?OBJ2 ?ATTR))))
- if obj ¦ì©ó region,
- then for all subobj holds: if subobj ¬O obj ªº ³¡¤À), then subobj ¦ì©ó region
.
(=>
(located ?OBJ ?REGION)
(forall
(?SUBOBJ)
(=>
(part ?SUBOBJ ?OBJ)
(located ?SUBOBJ ?REGION))))
- if person (¨S) ¾Ö¦³not(s) obj,
- then there exists type so that type ¦³ Åv ¨Ï person ¬°¯u and for all process holds: if process ¬O type ªº ¹ê¨Ò, then obj ¬O process ªº ¨ü¨ÆªÌ
.
(=>
(possesses ?PERSON ?OBJ)
(exists
(?TYPE)
(and
(holdsRight ?PERSON ?TYPE)
(forall
(?PROCESS)
(=>
(instance ?PROCESS ?TYPE)
(patient ?PROCESS ?OBJ))))))
If §í¨î(proc1,proc2) holds, then for all time,place holds: "there exists proc1 inst1 so that inst1 ¦ì©ó place timea(¤§¤¤) time" (¤£¡^°§Cs) %2 ªº ¥i¯à©Ê.
(=>
(inhibits ?PROC1 ?PROC2)
(forall
(?TIME ?PLACE)
(decreasesLikelihood
(holdsDuring
?TIME
(exists
(?INST1)
(and
(instance ?INST1 ?PROC1)
(located ?INST1 ?PLACE))))
(holdsDuring
?TIME
(exists
(?INST2)
(and
(instance ?INST2 ?PROC2)
(located ?INST2 ?PLACE)))))))
- if proc1 Á×§K proc2 ªº µo¥Í,
- then for all time,place holds: if there exists proc1 inst1 so that inst1 ¦ì©ó place timea(¤§¤¤) time, then there exists proc2 inst2 so that inst2 ¦ì©ó place timea(¤§¤¤) time
.
(=>
(prevents ?PROC1 ?PROC2)
(forall
(?TIME ?PLACE)
(=>
(holdsDuring
?TIME
(exists
(?INST1)
(and
(instance ?INST1 ?PROC1)
(located ?INST1 ?PLACE))))
(not
(holdsDuring
?TIME
(exists
(?INST2)
(and
(instance ?INST2 ?PROC2)
(located ?INST2 ?PLACE))))))))
class1 ¥]®e class2 if and only if for all obj2,info holds: if obj2 ¬O class2 ªº ¹ê¨Ò and obj2 (¤£) ¥]§ts) °T®§ %2, then there exists class1 obj1 so that obj1 (¤£) ¥]§ts) °T®§ %2.
(<=>
(subsumesContentClass ?CLASS1 ?CLASS2)
(forall
(?OBJ2 ?INFO)
(=>
(and
(instance ?OBJ2 ?CLASS2)
(containsInformation ?OBJ2 ?INFO))
(exists
(?OBJ1)
(and
(instance ?OBJ1 ?CLASS1)
(containsInformation ?OBJ1 ?INFO))))))
obj1 ¥]®e obj2 if and only if for all info holds: if obj2 (¤£) ¥]§ts) °T®§ %2, then obj1 (¤£) ¥]§ts) °T®§ %2.
(<=>
(subsumesContentInstance ?OBJ1 ?OBJ2)
(forall
(?INFO)
(=>
(containsInformation ?OBJ2 ?INFO)
(containsInformation ?OBJ1 ?INFO))))
- if prop1 ¬O prop2 ªº ¦¸©RÃD,
- then for all obj1,obj2 holds: if obj1 (¤£) ¥]§ts) °T®§ %2 and obj2 (¤£) ¥]§ts) °T®§ %2, then obj2 ¥]®e obj1
.
(=>
(subProposition ?PROP1 ?PROP2)
(forall
(?OBJ1 ?OBJ2)
(=>
(and
(containsInformation ?OBJ1 ?PROP1)
(containsInformation ?OBJ2 ?PROP2))
(subsumesContentInstance ?OBJ2 ?OBJ1))))
(=>
(equal
(GreatestCommonDivisorFn @ROW)
?NUMBER)
(forall
(?ELEMENT)
(=>
(inList
?ELEMENT
(ListFn @ROW))
(equal
(RemainderFn ?ELEMENT ?NUMBER)
0))))
- if " ªº ³Ì¤j¤½¬ù¼Æ" µ¥©ó number,
- then there doesn't exist greater so that greater (¤£) ¤j©ó number and for all element holds: if element ¬O "()" ªº ¤@ ¦¨û, then "element ¨ú¾l¼Æ greater" µ¥©ó
.
(=>
(equal
(GreatestCommonDivisorFn @ROW)
?NUMBER)
(not
(exists
(?GREATER)
(and
(greaterThan ?GREATER ?NUMBER)
(forall
(?ELEMENT)
(=>
(inList
?ELEMENT
(ListFn @ROW))
(equal
(RemainderFn ?ELEMENT ?GREATER)
0)))))))
(=>
(equal
(LeastCommonMultipleFn @ROW)
?NUMBER)
(forall
(?ELEMENT)
(=>
(inList
?ELEMENT
(ListFn @ROW))
(equal
(RemainderFn ?NUMBER ?ELEMENT)
0))))
- if " ªº ³Ì¤p¤½¿¼Æ" µ¥©ó number,
- then there doesn't exist less so that less ¤p©ó number and for all element holds: if element ¬O "()" ªº ¤@ ¦¨û, then "less ¨ú¾l¼Æ element" µ¥©ó
.
(=>
(equal
(LeastCommonMultipleFn @ROW)
?NUMBER)
(not
(exists
(?LESS)
(and
(lessThan ?LESS ?NUMBER)
(forall
(?ELEMENT)
(=>
(inList
?ELEMENT
(ListFn @ROW))
(equal
(RemainderFn ?LESS ?ELEMENT)
0)))))))
(=>
(instance ?PRIME PrimeNumber)
(forall
(?NUMBER)
(=>
(equal
(RemainderFn ?PRIME ?NUMBER)
0)
(or
(equal ?NUMBER 1)
(equal ?NUMBER ?PRIME)))))
- if id ¬O function ªº ¦P¤@¤¸¯À,
- then for all inst holds: if function ªº ½×¤¸ ¬O class ªº ¹ê¨Ò and inst ¬O class ªº ¹ê¨Ò, then "function(id,inst)" µ¥©ó inst
.
(=>
(identityElement ?FUNCTION ?ID)
(forall
(?INST)
(=>
(and
(domain ?FUNCTION 1 ?CLASS)
(instance ?INST ?CLASS))
(equal
(AssignmentFn ?FUNCTION ?ID ?INST)
?INST))))
- if subset ¬O set ªº ¤l¶°,
- then for all element holds: if element ¬O subset ªº ¤¸¯À, then element ¬O set ªº ¤¸¯À
.
(=>
(subset ?SUBSET ?SET)
(forall
(?ELEMENT)
(=>
(element ?ELEMENT ?SUBSET)
(element ?ELEMENT ?SET))))
If for all element holds: element ¬O set1 ªº ¤¸¯À if and only if element ¬O set2 ªº ¤¸¯À, then set1 µ¥©ó set2.
(=>
(forall
(?ELEMENT)
(<=>
(element ?ELEMENT ?SET1)
(element ?ELEMENT ?SET2)))
(equal ?SET1 ?SET2))
- if superclass ¬O ¦¨¹ï¿W¥ßÃþ ªº ¹ê¨Ò,
- then for all class1,class2 holds: if class1 ¬O superclass ªº ¹ê¨Ò and class2 ¬O superclass ªº ¹ê¨Ò, then class1 µ¥©ó class2 or class1 µL¥æ¶° ©ó class2
.
(=>
(instance ?SUPERCLASS PairwiseDisjointClass)
(forall
(?CLASS1 ?CLASS2)
(=>
(and
(instance ?CLASS1 ?SUPERCLASS)
(instance ?CLASS2 ?SUPERCLASS))
(or
(equal ?CLASS1 ?CLASS2)
(disjoint ?CLASS1 ?CLASS2)))))
- if class ¬O ¤¬¥¸Ãþ ªº ¹ê¨Ò,
- then for all inst1,inst2 holds: if inst1 ¬O class ªº ¹ê¨Ò and inst2 ¬O inst1 ªº ¹ê¨Ò, then there exists class inst3 so that inst2 ¬O inst3 ªº ¹ê¨Ò
.
(=>
(instance ?CLASS MutuallyDisjointClass)
(forall
(?INST1 ?INST2)
(=>
(and
(instance ?INST1 ?CLASS)
(instance ?INST2 ?INST1))
(exists
(?INST3)
(and
(instance ?INST3 ?CLASS)
(not
(instance ?INST2 ?INST3)))))))
- if
- "path ªº ¸ô®|ªø¶qÈ" µ¥©ó sum
and - subpath ¬O path ªº ¦¸¹Ï
and - arc1 ¬O path ªº ³¡¤À
and - arc1 ªº ©·½u¶q ¬O number1
and - for all arc2 holds: if arc2 ¬O path ªº ³¡¤À, then arc2 ¬O subpath ªº ³¡¤À or arc2 µ¥©ó arc1
, - then sum µ¥©ó "("subpath ªº ¸ô®|ªø¶qÈ"+number1)"
.
(=>
(and
(equal
(PathWeightFn ?PATH)
?SUM)
(subGraph ?SUBPATH ?PATH)
(graphPart ?ARC1 ?PATH)
(arcWeight ?ARC1 ?NUMBER1)
(forall
(?ARC2)
(=>
(graphPart ?ARC2 ?PATH)
(or
(graphPart ?ARC2 ?SUBPATH)
(equal ?ARC2 ?ARC1)))))
(equal
?SUM
(AdditionFn
(PathWeightFn ?SUBPATH)
?NUMBER1)))
- if
- "path ªº ¸ô®|ªø¶qÈ" µ¥©ó sum
and - arc1 ¬O path ªº ³¡¤À
and - arc2 ¬O path ªº ³¡¤À
and - arc1 ªº ©·½u¶q ¬O number1
and - arc2 ªº ©·½u¶q ¬O number2
and - for all arc3 holds: if arc3 ¬O path ªº ³¡¤À, then arc3 µ¥©ó arc1 or arc3 µ¥©ó arc2
, - then "path ªº ¸ô®|ªø¶qÈ" µ¥©ó "(number1+number2)"
.
(=>
(and
(equal
(PathWeightFn ?PATH)
?SUM)
(graphPart ?ARC1 ?PATH)
(graphPart ?ARC2 ?PATH)
(arcWeight ?ARC1 ?NUMBER1)
(arcWeight ?ARC2 ?NUMBER2)
(forall
(?ARC3)
(=>
(graphPart ?ARC3 ?PATH)
(or
(equal ?ARC3 ?ARC1)
(equal ?ARC3 ?ARC2)))))
(equal
(PathWeightFn ?PATH)
(AdditionFn ?NUMBER1 ?NUMBER2)))
(=>
(and
(equal
(MinimalWeightedPathFn ?NODE1 ?NODE2)
?PATH)
(equal
(PathWeightFn ?PATH)
?NUMBER))
(forall
(?PATH2)
(=>
(and
(instance
?PATH2
(GraphPathFn ?NODE1 ?NODE2))
(equal
(PathWeightFn ?PATH2)
?NUMBER2))
(greaterThanOrEqualTo ?NUMBER2 ?NUMBER1))))
(=>
(and
(equal
(MaximalWeightedPathFn ?NODE1 ?NODE2)
?PATH)
(equal
(PathWeightFn ?PATH)
?NUMBER))
(forall
(?PATH2)
(=>
(and
(instance
?PATH2
(GraphPathFn ?NODE1 ?NODE2))
(equal
(PathWeightFn ?PATH2)
?NUMBER2))
(lessThanOrEqualTo ?NUMBER2 ?NUMBER1))))
- if "¹º¤À graph ¬° ¨â ¿W¥ß ¹Ïªí ªº ³Ì¤p¬Û¥æ¸ô®|" µ¥©ó pathclass,
- then there exists number so that for all path holds: if path ¬O pathclass ªº ¹ê¨Ò, then path ªº ¸ô®|ªø ¬O number
.
(=>
(equal
(MinimalCutSetFn ?GRAPH)
?PATHCLASS)
(exists
(?NUMBER)
(forall
(?PATH)
(=>
(instance ?PATH ?PATHCLASS)
(pathLength ?PATH ?NUMBER)))))
(=>
(and
(instance ?REL RelationExtendedToQuantities)
(instance ?REL TernaryRelation)
(instance ?NUMBER1 RealNumber)
(instance ?NUMBER2 RealNumber)
(holds ?REL ?NUMBER1 ?NUMBER2 ?VALUE))
(forall
(?UNIT)
(=>
(instance ?UNIT UnitOfMeasure)
(holds
?REL
(MeasureFn ?NUMBER1 ?UNIT)
(MeasureFn ?NUMBER2 ?UNIT)
(MeasureFn ?VALUE ?UNIT)))))
(=>
(and
(instance ?REL RelationExtendedToQuantities)
(instance ?REL BinaryRelation)
(instance ?NUMBER1 RealNumber)
(instance ?NUMBER2 RealNumber)
(holds ?REL ?NUMBER1 ?NUMBER2))
(forall
(?UNIT)
(=>
(instance ?UNIT UnitOfMeasure)
(holds
?REL
(MeasureFn ?NUMBER1 ?UNIT)
(MeasureFn ?NUMBER2 ?UNIT)))))
- if obj1 ¤j©ó obj2,
- then for all quant1,quant2 holds: if obj1 ªº ´ú¶q ¬O "quant1 ªø«×³æ¦ì(s)" and obj2 ªº ´ú¶q ¬O "quant2 ªø«×³æ¦ì(s)", then quant1 (¤£) ¤j©ó quant2
.
(=>
(larger ?OBJ1 ?OBJ2)
(forall
(?QUANT1 ?QUANT2)
(=>
(and
(measure
?OBJ1
(MeasureFn ?QUANT1 LengthMeasure))
(measure
?OBJ2
(MeasureFn ?QUANT2 LengthMeasure)))
(greaterThan ?QUANT1 ?QUANT2))))
- if ¨C time1 µo¥Í proc,
- then for all time2 holds: if time2 ªº «ùÄò ¬O time1, then there exists position so that position ¬O time2 ªº ³¡¤À and there exists inst so that inst ¬O proc ªº ¹ê¨Ò positiona(¤§¤¤) position
.
(=>
(frequency ?PROC ?TIME1)
(forall
(?TIME2)
(=>
(duration ?TIME2 ?TIME1)
(exists
(?POSITION)
(and
(temporalPart ?POSITION ?TIME2)
(holdsDuring
?POSITION
(exists
(?INST)
(instance ?INST ?PROC))))))))
- if "interval ªº ¶}©l" µ¥©ó point,
- then for all otherpoint holds: if otherpoint ¬O interval ªº ³¡¤À and otherpoint µ¥©ó point, then point (¨S) µo¥Í?{s} ¦b otherpoint ¤§«e
.
(=>
(equal
(BeginFn ?INTERVAL)
?POINT)
(forall
(?OTHERPOINT)
(=>
(and
(temporalPart ?OTHERPOINT ?INTERVAL)
(not
(equal ?OTHERPOINT ?POINT)))
(before ?POINT ?OTHERPOINT))))
- if "interval ªº µ²§ô" µ¥©ó point,
- then for all otherpoint holds: if otherpoint ¬O interval ªº ³¡¤À and otherpoint µ¥©ó point, then otherpoint (¨S) µo¥Í?{s} ¦b point ¤§«e
.
(=>
(equal
(EndFn ?INTERVAL)
?POINT)
(forall
(?OTHERPOINT)
(=>
(and
(temporalPart ?OTHERPOINT ?INTERVAL)
(not
(equal ?OTHERPOINT ?POINT)))
(before ?OTHERPOINT ?POINT))))
- if obj ¬O ª«Åé ªº ¹ê¨Ò,
- then there exist ®ÉÂI time1,®ÉÂI time2 so that time1 (¨S) µo¥Í?{s} ¦b time2 ¤§«e and for all time holds: if time1 (¨S) µo¥Í?{s} ¦b time ©Î ¤§«e and time (¨S) µo¥Í?{s} ¦b time2 ©Î ¤§«e, then obj (¤£) ¦s¦bs time ´Á¶¡
.
(=>
(instance ?OBJ Object)
(exists
(?TIME1 ?TIME2)
(and
(instance ?TIME1 TimePoint)
(instance ?TIME2 TimePoint)
(before ?TIME1 ?TIME2)
(forall
(?TIME)
(=>
(and
(beforeOrEqual ?TIME1 ?TIME)
(beforeOrEqual ?TIME ?TIME2))
(time ?OBJ ?TIME))))))
- if obj ¬O proc ªº µ²ªG,
- then for all time holds: if time (¨S) µo¥Í?{s} ¦b ""proc ¦s¦b ªº ®É¶¡" ªº ¶}©l" ¤§«e, then obj not(¤£) ¦s¦b time ´Á¶¡
.
(=>
(result ?PROC ?OBJ)
(forall
(?TIME)
(=>
(before
?TIME
(BeginFn
(WhenFn ?PROC)))
(not
(time ?OBJ ?TIME)))))
If "point1 ©M point2 ªº ¶¡¶Z" µ¥©ó interval, then for all point holds: point ¦b point1 ©M point2 ©Î ¤§¶¡ if and only if point ¬O interval ªº ³¡¤À.
(=>
(equal
(TimeIntervalFn ?POINT1 ?POINT2)
?INTERVAL)
(forall
(?POINT)
(<=>
(temporallyBetweenOrEqual ?POINT1 ?POINT ?POINT2)
(temporalPart ?POINT ?INTERVAL))))
- if "interval ¤À¸Ñ¦¨ ? interval-types" µ¥©ó class,
- then for all time1,time2 holds: if time1 ¬O interval-type ªº ¹ê¨Ò and time2 ¬O class ªº ¹ê¨Ò, then there exists duration so that time1 ªº «ùÄò ¬O duration and time2 ªº «ùÄò ¬O duration
.
(=>
(equal
(TemporalCompositionFn ?INTERVAL ?INTERVAL-TYPE)
?CLASS)
(forall
(?TIME1 ?TIME2)
(=>
(and
(instance ?TIME1 ?INTERVAL-TYPE)
(instance ?TIME2 ?CLASS))
(exists
(?DURATION)
(and
(duration ?TIME1 ?DURATION)
(duration ?TIME2 ?DURATION))))))
- if "interval ¤À¸Ñ¦¨ ? interval-types" µ¥©ó class,
- then for all time1,time2 holds: if time1 ¬O class ªº ¹ê¨Ò and time2 ¬O class ªº ¹ê¨Ò and time1 µ¥©ó time2, then time1 (¨S) ¬Û±µs time2 or time2 (¨S) ¬Û±µs time1 or time1 (¨S) ¤ñ time2 ¸û¦ µo¥Ínot(s) or time2 (¨S) ¤ñ time1 ¸û¦ µo¥Ínot(s)
.
(=>
(equal
(TemporalCompositionFn ?INTERVAL ?INTERVAL-TYPE)
?CLASS)
(forall
(?TIME1 ?TIME2)
(=>
(and
(instance ?TIME1 ?CLASS)
(instance ?TIME2 ?CLASS)
(not
(equal ?TIME1 ?TIME2)))
(or
(meetsTemporally ?TIME1 ?TIME2)
(meetsTemporally ?TIME2 ?TIME1)
(earlier ?TIME1 ?TIME2)
(earlier ?TIME2 ?TIME1)))))
- if "interval ¤À¸Ñ¦¨ ? interval-types" µ¥©ó class,
- then for all time1 holds: if time1 ¬O class ªº ¹ê¨Ò and time1 not(¨S) §¹¦¨ interval, then there exists class time2 so that time1 (¨S) ¬Û±µs time2
.
(=>
(equal
(TemporalCompositionFn ?INTERVAL ?INTERVAL-TYPE)
?CLASS)
(forall
(?TIME1)
(=>
(and
(instance ?TIME1 ?CLASS)
(not
(finishes ?TIME1 ?INTERVAL)))
(exists
(?TIME2)
(and
(instance ?TIME2 ?CLASS)
(meetsTemporally ?TIME1 ?TIME2))))))
- if "interval ¤À¸Ñ¦¨ ? interval-types" µ¥©ó class,
- then for all time1 holds: if time1 ¬O class ªº ¹ê¨Ò and time1 not(¨S) ¶}©l interval, then there exists class time2 so that time2 (¨S) ¬Û±µs time1
.
(=>
(equal
(TemporalCompositionFn ?INTERVAL ?INTERVAL-TYPE)
?CLASS)
(forall
(?TIME1)
(=>
(and
(instance ?TIME1 ?CLASS)
(not
(starts ?TIME1 ?INTERVAL)))
(exists
(?TIME2)
(and
(instance ?TIME2 ?CLASS)
(meetsTemporally ?TIME2 ?TIME1))))))
- if "interval ¤À¸Ñ¦¨ ? interval-types" µ¥©ó class,
- then for all time holds: if time ¬O ®ÉÂI ªº ¹ê¨Ò and time ¬O interval ªº ³¡¤À, then there exists class instance so that time ¬O instance ªº ³¡¤À
.
(=>
(equal
(TemporalCompositionFn ?INTERVAL ?INTERVAL-TYPE)
?CLASS)
(forall
(?TIME)
(=>
(and
(instance ?TIME TimePoint)
(temporalPart ?TIME ?INTERVAL))
(exists
(?INSTANCE)
(and
(instance ?INSTANCE ?CLASS)
(temporalPart ?TIME ?INSTANCE))))))
obj ¬O ¦Û¨³sÄòª«Åé ªº ¹ê¨Ò if and only if for all part1,part2 holds: if obj µ¥©ó "part1 ©M part2 ªº Áp¶°", then part1 »P part2 ¬Û³s.
(<=>
(instance ?OBJ SelfConnectedObject)
(forall
(?PART1 ?PART2)
(=>
(equal
?OBJ
(MereologicalSumFn ?PART1 ?PART2))
(connected ?PART1 ?PART2))))
- if obj1 ¬O obj2 ªº ªí±,
- then for all obj3 holds: if obj3 ¬O obj2ªº ¥~ªí³¡¤À, then obj3 ¬O obj1 ªº ³¡¤À)
.
(=>
(surface ?OBJ1 ?OBJ2)
(forall
(?OBJ3)
(=>
(superficialPart ?OBJ3 ?OBJ2)
(part ?OBJ3 ?OBJ1))))
- if obj1 ¬O obj2 ªº ¤@ ¤º³¡,
- then for all part holds: if part ¬O obj2ªº ¥~ªí³¡¤À, then obj1 not(¨S) »P part «Å|
.
(=>
(interiorPart ?OBJ1 ?OBJ2)
(forall
(?PART)
(=>
(superficialPart ?PART ?OBJ2)
(not
(overlapsSpatially ?OBJ1 ?PART)))))
If obj3 µ¥©ó "obj1 ©M obj2 ªº Áp¶°", then for all part holds: part ¬O obj3 ªº ³¡¤À) if and only if part ¬O obj1 ªº ³¡¤À) or part ¬O obj2 ªº ³¡¤À).
(=>
(equal
?OBJ3
(MereologicalSumFn ?OBJ1 ?OBJ2))
(forall
(?PART)
(<=>
(part ?PART ?OBJ3)
(or
(part ?PART ?OBJ1)
(part ?PART ?OBJ2)))))
If obj3 µ¥©ó "obj1 ©M obj2 ªº ¥æ¶°", then for all part holds: part ¬O obj3 ªº ³¡¤À) if and only if part ¬O obj1 ªº ³¡¤À) and part ¬O obj2 ªº ³¡¤À).
(=>
(equal
?OBJ3
(MereologicalProductFn ?OBJ1 ?OBJ2))
(forall
(?PART)
(<=>
(part ?PART ?OBJ3)
(and
(part ?PART ?OBJ1)
(part ?PART ?OBJ2)))))
If obj3 µ¥©ó "obj1 ©M obj2 ªº ®t²§", then for all part holds: part ¬O obj3 ªº ³¡¤À) if and only if part ¬O obj1 ªº ³¡¤À) and part ¬O obj2 ªº ³¡¤À).
(=>
(equal
?OBJ3
(MereologicalDifferenceFn ?OBJ1 ?OBJ2))
(forall
(?PART)
(<=>
(part ?PART ?OBJ3)
(and
(part ?PART ?OBJ1)
(not
(part ?PART ?OBJ2))))))
- if hole1 ¦b obj ¬O ¬} and hole2 ¦b obj ¬O ¬},
- then for all hole3 holds: if hole3 ¬O "hole1 ©M hole2 ªº Áp¶°" ªº ³¡¤À), then hole3 ¦b obj ¬O ¬}
.
(=>
(and
(hole ?HOLE1 ?OBJ)
(hole ?HOLE2 ?OBJ))
(forall
(?HOLE3)
(=>
(part
?HOLE3
(MereologicalSumFn ?HOLE1 ?HOLE2))
(hole ?HOLE3 ?OBJ))))
If obj1 µ¥©ó "¬} hole ªº ¥DÅé", then for all obj2 holds: obj2 (¨S) »P obj1 «Å|s if and only if there exists obj3 so that hole ¦b obj3 ¬O ¬} and obj2 (¨S) »P obj3 «Å|s.
(=>
(equal
?OBJ1
(PrincipalHostFn ?HOLE))
(forall
(?OBJ2)
(<=>
(overlapsSpatially ?OBJ2 ?OBJ1)
(exists
(?OBJ3)
(and
(hole ?HOLE ?OBJ3)
(overlapsSpatially ?OBJ2 ?OBJ3))))))
- if obj1 (¨S) ¶ñ¥Rs hole,
- then for all obj2 holds: if obj2 »P hole ¬Û³s, then obj2 »P obj1 ¬Û³s
.
(=>
(completelyFills ?OBJ1 ?HOLE)
(forall
(?OBJ2)
(=>
(connected ?OBJ2 ?HOLE)
(connected ?OBJ2 ?OBJ1))))
If obj1 µ¥©ó "¬} hole ªº ªí¥Ö", then for all obj2 holds: obj2 (¨S) »P obj1 «Å|s if and only if there exists obj3 so that obj3 ¬O "¬} hole ªº ¥DÅé"ªº ¥~ªí³¡¤À and hole (¨S) ±µÄ²s obj3 and obj2 (¨S) »P obj3 «Å|s.
(=>
(equal
?OBJ1
(SkinFn ?HOLE))
(forall
(?OBJ2)
(<=>
(overlapsSpatially ?OBJ2 ?OBJ1)
(exists
(?OBJ3)
(and
(superficialPart
?OBJ3
(PrincipalHostFn ?HOLE))
(meetsSpatially ?HOLE ?OBJ3)
(overlapsSpatially ?OBJ2 ?OBJ3))))))
- if subproc ¬O proc ªº ¦¸¾úµ{,
- then for all region holds: if proc ¦ì©ó region, then subproc ¦ì©ó region
.
(=>
(subProcess ?SUBPROC ?PROC)
(forall
(?REGION)
(=>
(located ?PROC ?REGION)
(located ?SUBPROC ?REGION))))
- if
- path1 ¦ñÀH process µo¥Í ªº process¸ô®|
and - process (¤£) °_·½s ©ó source
and - process (¤£) ²×µ²not(s) dest
and - path1 ªº ªø«× ¬O measure1
and - there don't exist path2,measure2 so that path2 ¦ñÀH process µo¥Í ªº process¸ô®| and process (¤£) °_·½s ©ó origin and process (¤£) ²×µ²not(s) dest and path2 ªº ªø«× ¬O measure2 and measure2 ¤p©ó measure1
, - then for all obj holds: if obj ¬O path1 ªº ³¡¤À), then obj ¤¶©ó source ©M dest ¤¤¶¡
.
(=>
(and
(path ?PROCESS ?PATH1)
(origin ?PROCESS ?SOURCE)
(destination ?PROCESS ?DEST)
(length ?PATH1 ?MEASURE1)
(not
(exists
(?PATH2 ?MEASURE2)
(and
(path ?PROCESS ?PATH2)
(origin ?PROCESS ?ORIGIN)
(destination ?PROCESS ?DEST)
(length ?PATH2 ?MEASURE2)
(lessThan ?MEASURE2 ?MEASURE1)))))
(forall
(?OBJ)
(=>
(part ?OBJ ?PATH1)
(between ?SOURCE ?OBJ ?DEST))))
- if keep ¬O «O¦³ ªº ¹ê¨Ò and obj ¬O keep ªº ¨ü¨ÆªÌ,
- then there exists place so that for all time holds: if time ¬O "keep ¦s¦b ªº ®É¶¡" ªº ³¡¤À, then obj ¦ì©ó place timea(¤§¤¤) time
.
(=>
(and
(instance ?KEEP Keeping)
(patient ?KEEP ?OBJ))
(exists
(?PLACE)
(forall
(?TIME)
(=>
(temporalPart
?TIME
(WhenFn ?KEEP))
(holdsDuring
?TIME
(located ?OBJ ?PLACE))))))
- if cooperate ¬O ¦X§@ ªº ¹ê¨Ò,
- then there exists purp so that for all agent holds: if cooperate ¬O agent ªº ¬I¨ÆªÌ, then cooperate ¹ïagent ¦³ ·N¹Ï purp
.
(=>
(instance ?COOPERATE Cooperation)
(exists
(?PURP)
(forall
(?AGENT)
(=>
(agent ?COOPERATE ?AGENT)
(hasPurposeForAgent ?COOPERATE ?PURP ?AGENT)))))
(=>
(and
(instance ?WAR War)
(agent ?WAR ?AGENT))
(or
(instance ?AGENT Nation)
(and
(instance ?AGENT Organization)
(forall
(?MEMBER)
(=>
(member ?MEMBER ?AGENT)
(instance ?MEMBER Nation))))))
- if bacterium ¬O ²Óµß ªº ¹ê¨Ò,
- then there exists ²ÓM cell1 so that cell1 ¬O bacterium ªº ¤¸¥ó and for all cell2 holds: if cell2 ¬O bacterium ªº ¤¸¥ó and cell2 ¬O ²ÓM ªº ¹ê¨Ò, then cell1 µ¥©ó cell2
.
(=>
(instance ?BACTERIUM Bacterium)
(exists
(?CELL1)
(and
(component ?CELL1 ?BACTERIUM)
(instance ?CELL1 Cell)
(forall
(?CELL2)
(=>
(and
(component ?CELL2 ?BACTERIUM)
(instance ?CELL2 Cell))
(equal ?CELL1 ?CELL2))))))
- if virus ¬O ¯f¬r ªº ¹ê¨Ò,
- then there exists ¤À¤l mol1 so that mol1 ¬O virus ªº ¤¸¥ó and for all mol2 holds: if mol2 ¬O virus ªº ¤¸¥ó and mol2 ¬O ¤À¤l ªº ¹ê¨Ò, then mol1 µ¥©ó mol2
.
(=>
(instance ?VIRUS Virus)
(exists
(?MOL1)
(and
(component ?MOL1 ?VIRUS)
(instance ?MOL1 Molecule)
(forall
(?MOL2)
(=>
(and
(component ?MOL2 ?VIRUS)
(instance ?MOL2 Molecule))
(equal ?MOL1 ?MOL2))))))
- if food ¬O ¹ª« ªº ¹ê¨Ò,
- then for all part1 holds: if part1 ¬O food ªº ³¡¤À), then there exist part2,°Êª« animal so that part1 ¬O part2 ªº ³¡¤À) and part2 ¬O animal ªº ³¡¤À)
.
(=>
(instance ?FOOD Food)
(forall
(?PART1)
(=>
(part ?PART1 ?FOOD)
(exists
(?PART2 ?ANIMAL)
(and
(part ?PART1 ?PART2)
(part ?PART2 ?ANIMAL)
(instance ?ANIMAL Animal))))))
- if meat ¬O ¦× ªº ¹ê¨Ò,
- then for all part holds: if part ¬O meat ªº ³¡¤À), then there exist subpart,time,animal so that subpart ¬O part ªº ³¡¤À) and animal ¬O °Êª« ªº ¹ê¨Ò and subpart ¬O animal ªº ³¡¤À) timea(¤§¤¤) time
.
(=>
(instance ?MEAT Meat)
(forall
(?PART)
(=>
(part ?PART ?MEAT)
(exists
(?SUBPART ?TIME ?ANIMAL)
(and
(part ?SUBPART ?PART)
(holdsDuring
?TIME
(and
(instance ?ANIMAL Animal)
(part ?SUBPART ?ANIMAL))))))))
- if veg ¬O ½ªG ªº ¹ê¨Ò,
- then for all part holds: if part ¬O veg ªº ³¡¤À), then there exist subpart,time,plant so that subpart ¬O part ªº ³¡¤À) and plant ¬O ´Óª« ªº ¹ê¨Ò and subpart ¬O plant ªº ³¡¤À) timea(¤§¤¤) time
.
(=>
(instance ?VEG FruitOrVegetable)
(forall
(?PART)
(=>
(part ?PART ?VEG)
(exists
(?SUBPART ?TIME ?PLANT)
(and
(part ?SUBPART ?PART)
(holdsDuring
?TIME
(and
(instance ?PLANT Plant)
(part ?SUBPART ?PLANT))))))))
- if artifact ¬O ©T©w¤H³yª« ªº ¹ê¨Ò,
- then there exists place so that for all time holds: if time (¨S) µo¥Í?{s} ¦b ""artifact ¦s¦b ªº ®É¶¡" ªº µ²§ô" ©Î ¤§«e and ""artifact ¦s¦b ªº ®É¶¡" ªº ¶}©l" (¨S) µo¥Í?{s} ¦b time ©Î ¤§«e, then "artifact ¦b time ªº time¦ì¸m" µ¥©ó place
.
(=>
(instance ?ARTIFACT StationaryArtifact)
(exists
(?PLACE)
(forall
(?TIME)
(=>
(and
(beforeOrEqual
?TIME
(EndFn
(WhenFn ?ARTIFACT)))
(beforeOrEqual
(BeginFn
(WhenFn ?ARTIFACT))
?TIME))
(equal
(WhereFn ?ARTIFACT ?TIME)
?PLACE)))))
- if machine ¬O ¾÷¾¹ ªº ¹ê¨Ò,
- then for all proc holds: if machine ¹ï proc ¬O ¤u¨ã, then there exist resource,result so that resource ¹ï proc ¬O ¸ê·½ and result ¬O proc ªº µ²ªG
.
(=>
(instance ?MACHINE Machine)
(forall
(?PROC)
(=>
(instrument ?PROC ?MACHINE)
(exists
(?RESOURCE ?RESULT)
(and
(resource ?PROC ?RESOURCE)
(result ?PROC ?RESULT))))))
- if group ¬O ¦~ÄÖ¼h ªº ¹ê¨Ò,
- then for all memb1,memb2,age1,age2 holds: if memb1 ¬O groupªº ¦¨û and memb2 ¬O groupªº ¦¨û and memb1 ªº ¦~¬ö ¬O age1 and memb2 ªº ¦~¬ö ¬O age2, then age1 µ¥©ó age2
.
(=>
(instance ?GROUP AgeGroup)
(forall
(?MEMB1 ?MEMB2 ?AGE1 ?AGE2)
(=>
(and
(member ?MEMB1 ?GROUP)
(member ?MEMB2 ?GROUP)
(age ?MEMB1 ?AGE1)
(age ?MEMB2 ?AGE2))
(equal ?AGE1 ?AGE2))))
- if group ¬O ¿ËÄÝ¢A©v±Ú ªº ¹ê¨Ò,
- then for all memb1,memb2 holds: if memb1 ¬O groupªº ¦¨û and memb2 ¬O groupªº ¦¨û, then memb1 ©M memb2 ¬ÛÃö
.
(=>
(instance ?GROUP FamilyGroup)
(forall
(?MEMB1 ?MEMB2)
(=>
(and
(member ?MEMB1 ?GROUP)
(member ?MEMB2 ?GROUP))
(familyRelation ?MEMB1 ?MEMB2))))
- if ¹êÅé ¦b ¾úµ{ proc ¥¿²¾°Ê attr1 timea(¤§¤¤) time,
- then for all attr2 holds: if ¹êÅé ¦b ¾úµ{ proc ¥¿²¾°Ê attr2 timea(¤§¤¤) time, then attr2 µ¥©ó attr1
.
(=>
(holdsDuring
?TIME
(direction ?PROC ?ATTR1))
(forall
(?ATTR2)
(=>
(holdsDuring
?TIME
(direction ?PROC ?ATTR2))
(equal ?ATTR2 ?ATTR1))))
- if proc ±¹ï attr1 timea(¤§¤¤) time,
- then for all attr2 holds: if proc ±¹ï attr2 timea(¤§¤¤) time, then attr2 µ¥©ó attr1
.
(=>
(holdsDuring
?TIME
(faces ?PROC ?ATTR1))
(forall
(?ATTR2)
(=>
(holdsDuring
?TIME
(faces ?PROC ?ATTR2))
(equal ?ATTR2 ?ATTR1))))
For all org holds: org not(¨S) ¶±¥Î(s) person and person ¬O ¤HÃþ ªº ¹ê¨Ò if and only if ¥¢·~ªº ¬O person ªº ÄÝ©Ê.
(<=>
(forall
(?ORG)
(and
(not
(employs ?ORG ?PERSON))
(instance ?PERSON Human)))
(attribute ?PERSON Unemployed))
- if ³æ¦âªº ¬O obj ªº ÄÝ©Ê and part ¬O objªº ¥~ªí³¡¤À and color ¬O part ªº ÄÝ©Ê and color ¬O ì¦â ªº ¹ê¨Ò,
- then for all element holds: if element ¬O objªº ¥~ªí³¡¤À, then color ¬O element ªº ÄÝ©Ê
.
(=>
(and
(attribute ?OBJ Monochromatic)
(superficialPart ?PART ?OBJ)
(attribute ?PART ?COLOR)
(instance ?COLOR PrimaryColor))
(forall
(?ELEMENT)
(=>
(superficialPart ?ELEMENT ?OBJ)
(attribute ?ELEMENT ?COLOR))))
- if À㪺 ¬O obj ªº ÄÝ©Ê,
- then for all part holds: if part ¬O obj ªº ³¡¤À), then there exists subpart so that subpart ¬O part ªº ³¡¤À) and ²GÅ骺 ¬O subpart ªº ÄÝ©Ê
.
(=>
(attribute ?OBJ Wet)
(forall
(?PART)
(=>
(part ?PART ?OBJ)
(exists
(?SUBPART)
(and
(part ?SUBPART ?PART)
(attribute ?SUBPART Liquid))))))
entity ¬O "superclass ªº ©Ò¦³ ¤¸¯À ªº ¥æ¶°" ªº ¹ê¨Ò if and only if for all class holds: if class ¬O superclass ªº ¹ê¨Ò, then entity ¬O class ªº ¹ê¨Ò.
(<=>
(instance
?ENTITY
(GeneralizedIntersectionFn ?SUPERCLASS))
(forall
(?CLASS)
(=>
(instance ?CLASS ?SUPERCLASS)
(instance ?ENTITY ?CLASS))))