Hi!
I am somewhat confused about how to use the word “atom” in a paper we are writing.
(1) In Prolog an atom is said to be a “Textual constant. Used as name for compound terms, to represent constants or text.”. See here. Accordingly these are atoms: john
, grandparent
, etc.
(2) In texts about logic programming, e.g. Riguzzi (2018) and Baral and Gelfond (1994), “atoms” are said to be terms with the form p(t1, t2, ..., tn)
, where the t
s are terms and p
is a predicate symbol. This corresponds to the use of “atom” in classical first order logic.
Am I correct in assuming that (1) is the proper definition for “atom” when talking about Prolog, and that (2) is the proper definition for “atom” when talking about logic programming? I think that a reason for my confusion is that I think of Prolog as an instance of logic programming.
Cheers/JC