
This note is: [COG-INFRA]The content of this note is an outline of cognition and reasoning that provides a blueprint of a system that can be used to actually build a thinker who can interactvely have conversations rich enough to learn about and to answers omplex questions about its world. There are several high level requirements that can be stated as challanges to systems which claim they understand 'a lot'. Theoretical Requirements ------------------------ 1) It must be capable of having a rich world model [ONTOLOGY]2) Heads are finite [FINITE-HEADS] 3) The system must be conversational [CONVER] 4) The system must be autonomous [AUTONOMOUS] 5) It must be able to understand its owm metatheory [METATHEORY]) 6) It must implement some form of 'the gossip principle' (RWW [GOSSIP]) 7) The system must be 'in the world' where inputs arrive and effects happen asynchronously Practical Requirements ---------------------- 8) To satisfy 2) - everything must be representable as a finite structure 9) It must be realizable as a physial purchasable computer system This note is about 1) and 2) and the practical requirements 8) and 9). It will outline strictures we think are capable of being used to 'build a mind' and justify this claim by using it to 'solve' many of the problems of NLP, philosophy and AI in a unified framework. It has a reference implementation that allows anyone to try experiments. This work is the current state of our thinking about reasoning systems that started with the FOL system [FOL] developed at the Stanford Artificial Intelligence Labratory (SAIL) in the late 1970s and which was continued by many people and is still actively persued by R. Weyhrauch and C. Talcott at heir weekly meetings. World Modeling ============== FOL Contexts ------------ An FOL context, C, has three parts C=<L,SS,F> A language, L, a simulation structure, SS, and finite collection of facts, F. To satisfy 9) Each of these pieces needs to be realizable as a finite data structure, For building world models we use FOL contexts instead of the usual (ie logician's) notion theory. The Language ------------ An FOL language specifies a set of symbols (words (possibly containing spaces)) and the roles that they play when writing sentences of the language. To satisfy the requirement that an FOL context be a 'formal system' (again, in the sense of logicians) we also require that there is a way of defining expressions and a proceedure that can tell us if an expression is well-formed. The Model --------- An FOL simullation structure is collection of individuals, predicates, functions and relations. At first you can imagine these as being defined in the usual way using set theory. For building world models in computers we will look at these definitions more carefully. When world modeling we use FOL simukation structures to represent the 'mental images' of things. The Facts --------- An FOL fact does not have meaning outside an FOL context. F is the finite set of facts (of C). Each fact of C has at least two properties: a well-formed formula of L and a justification, that encodes the reason why it is 'in' C. Discussion: I know that the notion of justification is vague but it is an important idea that, unlike in the normal notion of theory, well formed-formulas of L, by themselves, cannot be 'in' a contexts. facts come (at the least) with an associated reason for being in C. [JUSTIFICATIONS] Signatures and Interpretations ------------------------------ A 'signature' is the tool we use to describe the organization of both languages and models. For C to be an FOL context, L and M have the same signature. If L and M have the same signature then there is an implicit map between them and we say that the model M is an interpretation of the symbols of the language L. In this way an FOL context makes explicit both the language that can be used to talk about things, the things the context is talking about and the connection between the two. We use FOL contexts as the basic building blocks of world models. The remainder of this document covers two important subjects 1) Notions we can introduce independent of the content od C 2) How we can make this all out of finite pieces Content Independent Notions =========================== We start by introducing the logical notions that are independent of the subject matter of a context. These ideas follow the notions of ordinary logic, but are carefully stated so that they do not have any hidden commitments to infimite structures. In the next section we describe how we can define finite structures and the changes we need to make to our understanding of theories without undoing the basic logical ideas of this section. In addition, we begin (informally) to write down expressions that will later become the wffs of facts of specific FOL contexts. The ultimate infrastructure we propose is not reductionist but rather is described by mutual recursion and takes a little bit of getting used to. Generality ---------- The first thing to observe is that an FOL context can name and cantain facts about other contexts. Furthermore, since FOL contexts are themselves data [DATA] they can be in the models of other contexts. This hierarchical organization means that a single context can itself refer to many other contexts (which in in turn can refer to others ... ) If you think of an FOL context as a theory then they directly incorporate the idea of metatheory. If you think of an FOL context as the belief structure of an agent then they can be used to discuss relations among the belief structures of multiple agents. If you imagine that the structures in the model of an FOL context are the 'mental imags' of the things that the context mentionesin the language, then we can build contexts that know about Frege's notions of sense and reference (Zinn und Bedeutung) as well as use and mention. ... . These ideas and more are expanded in the notes [FOL notes]. Inference --------- The fact that we can interpret the symbols of the language of an FOL context in its model allows us introduce the notion of inference. Consider again an FOL context C=<L,M,F>. Satisfaction ++++++++++++ We start by extending the notion of interpretation to all the well formed expressions of L. We call this extended function 'satisfies' and use it to decide, for any wff of L whether or not it holds or not in C. We introduce a relation (1) (Satisfied-by wff C) =def (= (satisfies wff M) :True) where wff must be in L. Consistency +++++++++++ We say a set W of WFFs of L is consistent and write (2) (Consist W) =def (forall w in W (Satisfies w M)) Let (3) (wffs-of C) =def {w | (and (in f F) (= (wff-of f) w))} We define consistency of an FOL context with the definition (4) (consist C) =def (consist (wffs-of C)) We say a wff w of L is consistent with C if (Consist (union {w} (wffs-of C))) The Exact meaning of what it means to be a definition is described below. Note that (offs-of C) is always finite. Also note here that some information about the language may imply the existence of facts in C that are to be included in wffs of a context. Conclusions +++++++++++ The notion that a wff of L can be concluded from C simply means that the wff is consistent with C, Discussion: Unlike tradional theories aE wff does not need to be the wff of a fact in C to be a conclusion, We distinguish conclusions we can make on the basis of a context and the operation of 'adding' a fact to the context of which has the wff as a part. [SATvs VAL] Rule of Inference +++++++++++++++++ A rule of inference is any function, r, that maps an FOL context (with possible additional arguments) to an FOL context that preserves consistency, ie (5) (implies (consist C) (consist (r C ...))) How do we make this finite [BEFORE-AFTER] These notions are 'just like' ie have the same definitions, but when the definitions are made in an FOL context they have a different meaning. This is simply a consequence of the fact that the analysis of logicians has been 'correct' but their notion of theory has been wrong. Remember we are replacing the notion of theory with that of FOL context and until we wactually use contexts to do this the difference can only be hinted at. &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& This means that. as a minimum, some form of traditional first order well formed formulas Must be expressable in the language, thus we start by using the well formed formulas of first order logic as the language of FOL contexts. Later we argue that first order notions plus FOL contexts are all that is necessary. An FOL language is a finite set of terms (words) and a description of what role they play in writing expressions of the language together with a program, wff, (a recognizer) that determines if an object is a well formed expressions of the language. Using recognizers to represent 'sets' and to be the interpretations of predicates is the strategy we use to reduce the notion of language, meaning an infinite set of expressions) to a collection of finite structures. Requirements: What is a minimal language? In representational terms it needs to contain 1) names for things 2) names for predicates that deliniate the type of a thing 3) names for operations on things both to construct 'new' things out of old ones and to be able to mention the parts of things 4) names for the relations between things (which form atomic expressions) 5) propositional connectives on expressions and 6) the quantifiers 'forall' and 'exists', We represent objects as finite structures and predicates, P, as programs that can recognize which structures are examples of P. The representation of functions are programs that take objects as arguments and return an object as a value. Relations are represented as programs whose arguments are objects and which will tell us (if it can) whether the relation holds or not on its arguments. why traditional programing languages do not satisfy our requirements and describe what is needed to facilitate this. and we call this map 'interp'. Signatures and a definition of 'interp' is described in detail below. 77777777777777777777777777777777777777777777777777 Here we state our clainof FOL contexts is powerful enough to model everything in one unified way, Even if this claim eventually proves optimistic, we show below that the use of FOL contexts can make a qualative jump over existing systems for realizing introductory goals above.