Before computer was invented, the human mind is the only known system that have general reasoning capability. The previous study of human reasoning is carried out by two carefully separated domains:
The first major logic was presented by Aristotle's Organon, in the form of syllogisms. This logic system has nominated the field for two thousand years, until the coming of mathematical logic, with First-Order Predicate Logic (FOPL) at the core, from the work of Frege, Whitehead, and Russell, which then nominated the field until now. Though many other logics have been proposed with various motivations and have reached various extents of success, FOPL remains to be taken as the standard form of logic.
Each logic typically specifies a language (with its grammar and semantics) to represent the system's beliefs, and a set of rules to represent the allowed premise-conclusion relation in each inference step. The suitability of the language and the validity of the rules are justified according to the desired application of the logic, as well as the assumption about its application environment. Consequently, for different purposes and different situations, what inference steps are considered as "valid" may also be different. In the following, we are going to analyze and compare a few typical types of logic.
Beside its logical part (i.e., language and rules), each inference system also has a control part, which is responsible for the storage and access of the premises and conclusions, as well as the selection of them and the inference rule for each step of the system. Their design and evaluation also depend on the purpose and situation of the reasoning system, as we will see from the following discussion.
In the study of logic, the pursuing of truth directly leads to the classical notion of validity in inference: a valid (or sound) inference rule always derives true conclusions from true premises.
Of course, for the above definition of validity to be meaningful, we need to define "true" or "truth" first. Intuitively speaking, a statement is true if and only if it corresponds to a fact, that is, a description of the world as it is. This idea is formally represented in model-theoretic semantics. According to this approach, if we want to describe the world in a language L, we should first assume there is a meta-language ML that can describe the relevant part of the world as it is, in terms of the existing objects, as well as their properties and relations. Such a description is called a model. Now each word in L can get its meaning by referring to an object (or property, relation) in the model, and a statement is true if and only if the situation it describes match a fact in the model.
Now we can build an axiomatic reasoning system, which consists of a set of axioms (or postulates) that are true in the given model, plus a set of inference rules that are valid in the above sense. Consequently, all the conclusions derived by the system are all true (in the model). Furthermore, we usually assume the system has enough storage space to accomplish inference process of any finite length, and there is an algorithm that guides the inference process, in the sense that for any given statement, an inference process will be carried out in finite time, which will decide whether the statement is true or not.
The technical name of such a system is "decidable axiomatic system", and in this book it is called "pure-axiomatic system", for a reason to be explained later. This kind of reasoning system has been dreamed by many thinkers and researchers, including Leibniz, Boole, Hilbert, and many others. For a given domain, such a system will provide the final solution to all problems.
Clearly, this kind of system can only be designed and built under certain conditions. For a given domain and problems to be solved in the domain, the following conditions must be satisfied:
Since the above requirement is very difficult to satisfy, pure axiomatic systems can only be built in limited mathematical domains.
One simple option is to say "I don't know" to the problems for which no prefect solution can be guaranteed. The trouble with this option is that very often the system has to deal with certain problems, and to do nothing can lead to a worse consequence than what an imperfect solution can cause. There are many such examples.
When a reasoning system has to work with some kind of insufficiency in its knowledge and resources, a common and natural strategy is to revise and/or extend the "pure-axiomatic" approach, by allowing certain aspect of the system to be imperfect, while remaining as close to the classical (pure-axiomatic) systems as possible. Many "non-classical logics" belong to this category, as well as various types of AI systems in the fields of "commonsense reasoning", "uncertain reasoning", and "machine learning". The following is an incomplete list:
Conventional wisdom suggests us to take the semi-axiomatic approach by revising or extending one aspect of the classical system at a time, so as to gradually acomendate the insufficiency of knowledge and resources. After all, scientific methods usually solve a large problem by isolating its components, then solving them one by one.
However, the situation we are facing is special. Not only the semi-axiomatic systems cannot be easily integrated, but also from a theoretical point of view, all the issues they addressed separately are caused by a common reason, that is, the insufficiency of knowledge and resources. Therefore, these issues should be handled together, on the foundation of a new notion of validity. Actually, many problems in the semi-axiomatic systems are caused by the conflict between different notions of validity accepted in different aspects of the system. Therefore, addressing all the related issues in a consistent manner may turn out to be an easier approach than addressing them separately.
Therefore, in the following we are going to explore a novel type of inference system, called non-axiomatic system, in which the insufficiency of knowledge and resources are assumed completely. Also explained in Chapter 2, intelligence is justified as adaptation. Applied to the situation of inference system, it means in a non-axiomatic system, it is impossible to get absolute truth, nor to know the distance between its beliefs and the absolute truth. What the system has is its experience, so it will use this experience, not a model, as reference when defining meaning and truth. Similarly, certain inference rules are valid, in the sense that the truth value it assigns to its conclusion properly measures the evidential support provided by the premises. The memory and control structure of a non-axiomatic system should allow the system to work with its available knowledge and resources efficiently, even though they are insufficient to provide perfect solutions to the problems.
Such a non-axiomatic system is not only desired, but also plausible. Actually, such a formal model, NARS (for Non-Axiomatic Reasoning System), has been designed and implemented in a computer system. The most comprehensive description of this model is [Wang, 2006]. In this book, we only describe and discuss NARS at the conceptual level, without going into technical details.
In the following sections, the major parts of NARS will be introduced. The purpose here is not to describe this formal model, but to use it as an example to describe an intelligent inference system in general.