has purpose for agent (hasPurposeForAgent)
Expresses a cognitive attitude of an
agent with respect to a particular instance of Physical. More precisely,
(hasPurposeForAgent thing formula agent) means that the purpose of
thing for agent is the proposition expressed by formula. Very complex
issues are involved here. In particular, the rules of inference of the
first order predicate calculus are not truth-preserving for the second
argument position of this Predicate.
Ontology
SUMO / BASE-ONTOLOGYClass(es)
Coordinate term(s)
altitude
between
capability
conditional probability
confers obligation
confers right
connects
depth
distance
domain
domain subclass
links
occupies position
orientation
prefers
related external concept
represents for agent
represents in language
temporally between
temporally between or equal
Type restrictions
hasPurposeForAgent(physical, formula, cognitive agent)
Related WordNet synsets
See more related synsets on a separate page.
Axioms (6)
If agent wants obj, then there exists purp so that obj has &n purpose purp for agent.
(=>
(wants ?AGENT ?OBJ)
(exists
(?PURP)
(hasPurposeForAgent ?OBJ ?PURP ?AGENT)))
If thing has purpose purpose, then there exists agent so that thing has &n purpose purpose for agent.
(=>
(hasPurpose ?THING ?PURPOSE)
(exists
(?AGENT)
(hasPurposeForAgent ?THING ?PURPOSE ?AGENT)))
If proc is an instance of intentional process and proc is an agent of agent, then there exists purp so that proc has &n purpose purp for agent.
(=>
(and
(instance ?PROC IntentionalProcess)
(agent ?PROC ?AGENT))
(exists
(?PURP)
(hasPurposeForAgent ?PROC ?PURP ?AGENT)))
If proc is an instance of diagnostic process and proc is an agent of agent, then there exists cause so that proc has &n purpose "agent knows "cause causes proc"" for agent.
(=>
(and
(instance ?PROC DiagnosticProcess)
(agent ?PROC ?AGENT))
(exists
(?CAUSE)
(hasPurposeForAgent
?PROC
(knows
?AGENT
(causes ?CAUSE ?PROC))
?AGENT)))
- if cooperate is an instance of cooperation,
- then there exists purp so that for all agent holds: if cooperate is an agent of agent, then cooperate has &n purpose purp for agent
.
(=>
(instance ?COOPERATE Cooperation)
(exists
(?PURP)
(forall
(?AGENT)
(=>
(agent ?COOPERATE ?AGENT)
(hasPurposeForAgent ?COOPERATE ?PURP ?AGENT)))))
If contest is an instance of contest, then there exist agent1,agent2,purp1,purp2 so that contest is an agent of agent1 and contest is an agent of agent2 and contest has &n purpose purp1 for agent1 and contest has &n purpose purp2 for agent2 and agent1 is not equal to agent2 and purp1 is not equal to purp2.
(=>
(instance ?CONTEST Contest)
(exists
(?AGENT1 ?AGENT2 ?PURP1 ?PURP2)
(and
(agent ?CONTEST ?AGENT1)
(agent ?CONTEST ?AGENT2)
(hasPurposeForAgent ?CONTEST ?PURP1 ?AGENT1)
(hasPurposeForAgent ?CONTEST ?PURP2 ?AGENT2)
(not
(equal ?AGENT1 ?AGENT2))
(not
(equal ?PURP1 ?PURP2)))))