I challenge the fact that the notion of Atom, as it existed in OpenCog Classic, should be verbatimly translated to MeTTa.
What is the usual definition of atom?
In general, atom means something indivisible. In logic, an atomic proposition is an indivisible proposition such as True, False, p or even p(t) (where t is a term, not a proposition).
What is the history of Atom in OpenCog Classic?
In the context of OpenCog Classic, as I understand it, an atom meant a node or a link, an indivisible unit of knowledge. Since it's hard to talk about a link in a vaccum, that notion of link progressively got conflated with the notion of subgraph, and since a link is an atom, the notion of atom got conflated with the notion of subgraph as well.
What is the current use of Atom in MeTTa?
In MeTTa, Atom is the metatype that is the sum of Symbol, Variable, Grounded and Expression, therefore it is not indivisible, because Expression can itself be decomposed into sub-expressions.
What should it be called then?
I suggest to replace Atom by Term, but I'm open to other suggestions.
What is your problem?
I challenge the fact that the notion of
Atom
, as it existed in OpenCog Classic, should be verbatimly translated to MeTTa.What is the usual definition of atom?
In general, atom means something indivisible. In logic, an atomic proposition is an indivisible proposition such as
True
,False
,p
or evenp(t)
(wheret
is a term, not a proposition).What is the history of
Atom
in OpenCog Classic?In the context of OpenCog Classic, as I understand it, an atom meant a node or a link, an indivisible unit of knowledge. Since it's hard to talk about a link in a vaccum, that notion of link progressively got conflated with the notion of subgraph, and since a link is an atom, the notion of atom got conflated with the notion of subgraph as well.
What is the current use of
Atom
in MeTTa?In MeTTa,
Atom
is the metatype that is the sum ofSymbol
,Variable
,Grounded
andExpression
, therefore it is not indivisible, becauseExpression
can itself be decomposed into sub-expressions.What should it be called then?
I suggest to replace
Atom
byTerm
, but I'm open to other suggestions.