A non-atomic term or NAT, represented in the Cyc Knowledge Base by #$CycLNonAtomicTerm
, is a type of represented term and a type of formula that is not atomic, i.e., that is neither a variable, a constant, nor a SubL atomic term. NATs are terms formed by applying a function to its arguments. Like constants, each NAT denotes some thing in the Cyc Knowledge Base. Currently, there are two kinds of NAT: non-atomic reified terms (NARTs), which are a type of FORT, and are implemented with data structures that have indexing allowing all uses of the NAT to be retrieved; and non-atomic unreified terms (NAUTs), which have no such indexing and remain in the form of a “lispy” expression in the formulas in which they occur.