A Node representing any concept.
A ConceptNode has a TruthValue, composed of at least a strength and a confidence value, which are both values between 0 and 1.
The strength indicates the occurence of a concept within the context of experience. The confidence indicates how sure the agent or system is of this value. These values are used by PLN to perform probabilistic reasoning.
For example, imagine an empty AtomSpace and a newborn agent that begins observing the world for the first time. If the first two things it sees are a man and a donkey, it may define the following concepts (in Scheme notation)
ConceptNode "Man" (stv 0.5 0.001) ConceptNode "Donkey" (stv 0.5 0.001)
Since the agent has only observed two concepts in it's universe, it will think half (0.5) of the universe consists of Men and half (0.5) of the universe consists of Donkeys.
Because the agent has not made a lot of observations yet, it may assign a low Confidence to these values.
A special case is a SemeNode, used for concepts obtained through natural language input.
Defining new ConceptNodes
can be defined by asserting that the following is true:
EquivalenceLink ConceptNode "the-set-of-things-that-breath-air" SatisfyingSetLink VariableNode "$X" EvaluationLink PredicateNode "breathe" ListLink VariableNode "$X" ConceptNode "air"
This defines a new ConceptNode "the-set-of-things-that-breath-air" in terms of two previously existing ConceptNodes: those for "breath" and "air".
Also, the truth value of a ConceptNode actually corresponds to how much the universe extensionally inherits from it, that is
ConceptNode A <TV>
is equivalent to
SubsetLink <TV> Universe A