Semantics is one of the most challenging aspects of cognitive architectures. Mathematical logic, or linguistics, highlights that semantics is essential to human cognition. The Cognitive Theory of True Conditions (CTTC) is a proposal to implement cognitive abilities and to describe the semantics of symbolic cognitive architectures based on model-theoretic semantics. This article focuses on the concepts supporting the mathematical formulation of the CTTC, its relationship to other proposals, and how it can be used as a framework for designing cognitive abilities in agents.

Artificial intelligence (AI) attempts to reproduce the cognitive abilities of humans, and cognitive psychology (CP) explains these abilities. This complementarity is exhibited by the development and implementation of computer models, called cognitive architectures, which explain the structure and functioning of the human mind. Cognitive architectures have emerged from the programme proposed by Allan Newelll to build unified theories of cognition (

Since Newell’s proposal, significant research has been done to develop cognitive architectures. However, while many steps have been taken to understand the syntactic aspects of cognition, few have been taken to understand semantics in cognition (

This article is focused on presenting a proposal to research these semantic aspects, called the Cognitive Theory of True Conditions (CTTC) (

The structure is described here. The second section briefly reviews the main elements of the CTTC: true conditions, the PPFMM structure and the hierarchy of languages. The third section deals with how the CTTC addresses describing decision-making processes and designing mechanisms to make decisions. The fourth section shows how the CTTC has been used to implement episodic memory in agents. The fifth section discusses the differences between the CTTC and other symbolic approaches that already exist in AI. The last section summarizes the main issues reviewed and discusses future research plans.

In the early 20th century, David Hilbert proposed doing away with the notion of truth to create a foundation for mathematics. His programme was based only in syntactic notions, but Kurt Gödel showed that this was not powerful enough. Alfred Tarski reintroduced the notion of truth in mathematics when given a formal definition of truth for formal languages (

The concept of model-theoretic semantics is also important in CP. The seminal work of Philip Johnson-Laird (

The main idea behind the CTTC is that the perceptual space is a set of formal languages that denote elements of a model embedded in a quotient space of the physical space. In other words, the CTTC assumes that the perceptual space is a language, and the relation between the perceptual space and the physical space has two features. One is the omission of elements of the physical space within the perceptual space (e.g., humans cannot see infrared and ultraviolet radiation). The other feature is that different physical states result in the same perceptual state in the perceptual process. (e.g., humans cannot perceive atomic variations when perceiving a macroscopic object). It is important to note that the CTTC does not propose that the mathematical structure connected to the languages by the true conditions is isomorphic to the physical universe. Nature has not led to the emergence of the human brain architecture because it describes completely the physical structure of the universe. Human brain architecture has emerged because there is a differential reproduction in human niches, and the human brain architecture allows longer and more frequent survival than other brain architectures. Also, evolution punishes brain architectures that waste energy and time describing elements and features of the physical space that are not relevant to the differential reproduction.

The CTTC uses the following methodology to explain cognitive abilities:

Determines a class of mathematical structure from the perceptual human space.

Defines formal languages to describe the structures of the previous class of mathematical structures.

Defines algorithms that manipulate the previous formal languages to explain cognitive abilities.

It must be noted that the CTTC relies on the proposal that we can obtain the class of the mathematical structures the brain is trying to describe by studying the perceptual human space. One could be surprised by the proposal that a class of mathematical structures can be determined from the perceptual space, because the CTTC considers the perceptual space to be a language to describe the physical space. However, in model theory, one classical technique for building a mathematical structure that can be a model for a set of formulas is employing atomic formulas.

According to the described approach, the CTTC proposes to identify mental representations with formulas of a hierarchy of formal languages that describe a specific class of mathematical structures model whose signature is the same as the perceptual human space. The CTTC also proposes that an agent can be endowed with cognitive abilities by implementing algorithms that can handle the formulas of the hierarchy of formal languages for the class of mathematical structures that the brain is trying to describe. Therefore, the first element of the CTTC is a class of mathematical structures, and the second one is a set of formal languages that must allow for describing the previous class of mathematical structures. The meaning of

As was mentioned above, the first element of the CTTC is a class of mathematical structures. The CTTC determines that the signature of the class of structures is generated from the perceptual human space. The signature is a list of the kind of functions and relations that the structure has. Therefore, the CTTC states that the relationship between the physical and perceptual spaces is the same that exists between models and languages in model theory. To clarify, although the current section is discussing structures based on the physical space, the previous section discussed perceptual space because there has been an evolutive process that has conformed to the perceptual space. Among other features, the structure must model the perceptual arrow of time. Currently, the CTTC proposes a class of structures, called

An MMPPF structure has worlds, named

Alongside the relation between temporal perspectives and moments of time, there is a binary relation between realities. Figure 1 shows a graphical example of the aforementioned concepts and relations of an MMPPF structure. It is important to note that although we use the same notation, moments of time of different temporal perspectives are different objects. We should use an index denoting the temporal perspective to which the moment of time belongs. However, the reality notation is general to all temporal perspectives. If in any two different temporal perspectives there is the same name for a reality in each temporal perspective, they reference the same reality.

It was mentioned above that a reality is a triple, yet only two elements were explained. The third element of the triple consists of a many-sorted structure, which has sorts of three kinds. The sorts of the first kind are those that contain identifiers for the objects or theirs parts. The many-sorted structure has two sorts of this first kind: the sort for the identifiers of objects,

The sorts of the second kind are the properties that an object can have, and the elements of each of these sorts are the values that each of the parts of an object can possess. Thus, each of these sorts is called _{p}. Each _{p} can be not only a set but also a mathematical structure, i.e., a vector space and it has dimensions. The existence of dimensions in a _{p} is important because we need to consider changes in the dimensions, as we will see below, in addition to changes of the property.

The sorts of the last kind contain functions, called

Together with sorts, each many-sorted structure has functions and relations. The functions connect the elements of the different sorts. There is a function that assigns parts to each object, and another for each property that assigns values to each part. Also, there is a function that assigns actions to each object. Each object always has an action assigned for each property, which does not alter the value of the property. These actions are named

Regarding the relations of the many-sorted structure, they determine when one object influences the values of another in a specific property. This means that if an object _{i} is related to another object _{i} in the property

It was mentioned above that there is a relation between realities. This relation is directly connected to the actions associated with each object, and it connects a reality of the moment of time

When considering a temporal perspective as a graph where the realities are its nodes, a path where each node belongs to a different moment is called a

The binary relation between realities can be described as a function. That function assigns a reality, named

Another important function that can be drawn from an MMPPF structure is the interaction function, denoted by

where

Usually, we are interested in the actions an object contributes to the interaction, such as when there is only one agent among all the objects of the environment. To denote the specific actions of one object, we add a subindex to indicate the agent,

Using the functions and

Although we have obtained the functions & and

The last element about the MMPPF structure to discuss is a specific sort that contains values that reference reward and aversion states. This sort, named

Each pair determines the level of reward for a sensation, e.g., hunger and thirst. The first element of the pair determines the sensation of reward or aversion, and the second element is the maximum sensation of reward. The elements are ordered so that the farther the distance is from the first element of the pair to the second, the greater the aversion to the situation. Reward and aversion do not exist in the external physical world. Although one could think that reward and aversion should not be included in the MMPPF structure definition because they do not exist in the external physical world, they exist in the brain through neuronal signals that organisms integrate into their representations of reality (

Primary rewards are fundamental to driving behavior in animals. The MMPPF structure captures that fact with the function

If

It is interesting to note that if function

In model theory, a formal language is defined to describe a given mathematical structure. This mathematical approach of model theory is used by the CTTC. It proposes that the physical space is described by the perceptual space. The MMPPF structure definition provided in the previous subsection was obtained from the subjective perceptual space. The CTTC defines formal languages to describe the MMPPF structure (

The formal languages of the hierarchy are named as follows: perceptive language, extended perceptive language and categorical language. They are denoted _{MMPPF}_{MMPPF}_{MMPPF}

All the formulas of these languages only reference one temporal perspective of the MMPPF structure. _{MMPPF}_{MMPPF}

An agent can generate a well-formed formula of _{MMPPF}_{MMPPF}_{MMPPF}_{MMPPF}_{MMPPF}

It should be noted that how an agent builds its log formula is an issue closely related to how the agent determines if a formula is true or false. Given a formula of _{MMPPF}_{MMPPF}_{MMPPF}_{MMPPF}

Until now, we have shown how the CTTC determines how an _{environme}nt can be described by an agent. However, we have not discussed how decision-making processes are described in the CTTC. The first issue is that the CTTC establishes a relation that connects the MMPPF structures with the hierarchy of languages. The general equation is the following:

where, _{u} is a function that generates a pair of elements (the first element is a sequence of constants that denote interactions of the agent _{n}_{n}′]t^{n} is the projection function that projects the n-element of a tuple, and _{p} = (_{x}) is the existing reality of the moment of time ^{r}_{p} an interpretation function, and

The relation formulated can be seen as a functional equation if _{u} is considered an unknown variable. The problem is that we do not know a method to determine _{u}. From Equation 1 different particular equations can be derived. For more details, we refer to the reader to (

Episodic cognition is an important skill that comprises episodic memory and foresight. This section explains how the CTTC has been used as a framework for implementing episodic memory in agents and mechanisms of attention. This research is aimed at providing agents of a microworld with episodic visual memory through the hierarchy of languages of the CTTC. Specifically, the target consists in an agent having the ability to remember whether it sees other specific agents to assist its navigation through the microworld. The starting point was a microworld and an architecture of agents, the Topological Qualitative Navigation Architecture (TQNA) 1.0., designed and implemented in previous research (

Using the CTTC as a framework, episodic memory can be identified with the log formula. By defining new data types and classes, the log formula has been implemented. New data types define the following: the condition of reality, temporal location values, atomic formulas of _{MMPPF}

Using the types and structures defined, the algorithm to store information to create episodic memory implemented in the agents is Algorithm

formulaL0; This variable stores the information of an atomic formula of _{MMPPF}

momentoActual:= CMomentL0.create; // It creates an instance of the _{class tha}t implements a moment of time

IF Lobjvistos.count > 0)THEN; // It checks that the visual space is not empty FOR n:= 0 TO Lobjvistos.count-1 DO // It builds the moment

BEGIN

actualMoment.insert(Lobjvistos.item(n),e,present); // It builds an atomic formula and adds it to the moment END

logFL0.insertMoment(actualMoment); // It builds the log formula adding the actual moment

One issue to take into account is that when the moment of time created is added to the log formula, the last moment stored must change the temporal location of the atomic formulas of which it is composed of the past.

Regarding determining if a specific agent is seen or not, a method is defined that uses a

The previous implementation does not consider a limit in the computing resources, but we know that the human brain has a limit of the number of objects it can pay attention to (

The software development used to write the implementation was Delphi XE7. Figure

The logical approach is one of the oldest in AI. It was proposed by McCarthy in 1958 in the Symposium on Mechanization of Thought Processes at the National Physical Laboratory in Teddington. In AI, there are several symbolic formalisms, such as situation calculus (

model theory is semantic in nature. Proof theory is focused on rules, and the validity of the rules is proven with a proof that does not produce formulas that disagree with the axioms. In model theory, on the other hand, the rules are valid if they are semantically correct in models. Gödel proved that a syntactic approach cannot provide a foundation for mathematics (

Situation calculus, event calculus, and fluent calculus are formalisms that use the proof theory approach. In those formalisms, deductive systems are defined using sets of axioms, and plans of actions are generated using a syntactic approach. They apply resolution to achieve the goal. Resolution is a rule where semantics does not play any role. Iteratively applying resolution allows for knowing whether a propositional formula is satisfiable and for proving that a first-order formula is unsatisfiable. Thus, these formalisms only consider syntactic aspects. However, the CTTC involves the use of semantics because the mechanism for making decisions is based on a heuristic of qualitative semantic, and its rules for calculation are always contrasted with the MMPPF structure.

This leads to the fact that situation calculus, event calculus, and fluent calculus need external mechanisms to solve the symbol grounding problem that is not contemplated in their own formalisms. The predicates describe the properties and states of the objects, but the previous formalism never addresses how a robot or an agent can create the predicates from sensors to describe its environment. However, the CTTC contains its own mechanism, the hierarchy of languages, to address the symbol grounding problem, e.g., from the position of an object, the CTTC’s hierarchy of languages determines that the object is moving or unmoving.

There are many proposals to describe how the human mind works in the field of cognitive architectures (

This article introduces the main concepts of the CTTC (

There are many possible lines of future research to expand the CTTC, but regardless if elements are modified or new elements incorporated, all must agree with the two principles that underlie the CTTC. In addition, the implementation of episodic memory in agents was discussed in this paper. The implementation performed serves as an example of how cognitive abilities and processes can be interpreted in the CTTC.

At this moment, the mathematical formulation of the CTTC is neither closed nor definitive. There are many issues that need to be developed and others have not even begun to be researched. For example, the hierarchy of languages is only about an internal description of the environment, but an external description has not been mentioned in this paper, and it has only begun to be addressed (_{MMP P F}_{MMP P F}_{MMP P F}

To conclude, the CTTC shows that understanding cognitive abilities and addressing the challenges of computational grounded cognition from a model-theoretic point of view is a legitimate line of research.

This appendix shows Object Pascal code for the definition of the types and the classes to the implementation of episodic memory. The code for the implementation of the methods of the classes is not included because space limitations.

The code for the types to the reality indicators, the temporal situators, and the connectors:

TReallity = (e,h);

TTemporal = (past,present,future);

TConnector = (plus, next, later ,alternatively, empty );

The code to implement a type to the atomic formulas of L_{
} is the following:

TAtomicFL0 = record

id_objeto:integer;

rpositioner: TReallity ;

tsituator: TTemporal;

objeto:TobjVistoTopo;

end;

The structure of the formulas of the set of moments was implemented as a class. Thus, an object of this class is a formula of the set of mo_{ments. T}he class has an array of atomic formulas. This implementation avoids the use of the connector

CMomentL0 = Class

Moment: array of TAtomicFL0; private

public

constructor Create ; //

procedure insert (objeto:TobjVistoTopo; rp: TReallity; ts: TTemporal);

procedure transformarTemporal ( ts: TTemporal);

procedure copy (var copia: CMomentL0 ) ;

function size:integer;

function isObject (id:integer): boolean;

end;

To create the Log formula, it was necessary to define a new type of data first. This type is a register with two fields. One is a formula of the set of moments of time. The other is a connector.

TParFL0 = record

formulaM: CMomentL0;

connector: TConnector;

end;

The structure of the log formula has been implemented as a class. The class has an array of the previous type. The value of the field connector of a element of the array stores the connector between the formula stored in the same register and the formula of the next register. The last element of the array has always the value empty in the field connector.

CLogFL0 = Class

logL0: array of TParFL0 ;

private

public

constructor Create;

procedure insertMoment (m:CMomentL0);

function retrieve(id:integer): Tmemory;

end;

An object of this last class has been declared in the class of the agent. Thus, when an instance of the agent is created, it has a log formula. The method retrieve allows to determine if in the log formula exists an atomic formula about a specific agent. The method of retrieving allows for determining if an atomic formula about a specific agent exists in the log formula. If it exists, the method returns true.