Binary Reasoning
1. Reasoning system
Generally speaking, reasoning is the process of deriving new knowledge from existing knowledge, step by step.
Models of reasoning can be normative (how reasoning should be done according to general principles, e.g., logical reasoning) or descriptive (how reasoning are done by humans, e.g., reasoning models in psychology and LLM). This lecture is mainly about the former.
A logic normally consists of
- a representation language (usually specified by some grammar rules) to express knowledge as sentences,
- the semantic definitions of meaning and truth to make the sentences understandable to the user and to define the validity of inference,
- a set of (valid) inference rules that use the sentences as premises and conclusions.
A reasoning system implements a logic in a computer to answer questions according to given and derived knowledge, so is more capable than a database/knowledge-base. Its major components include
- A user interface to exchange sentences with the user (with knowledge and questions as input, and answers as output),
- A memory structure to store the knowledge, questions, and intermediate results,
- Routines for syntactic analysis of the input sentences,
- Routines for the inference rules,
- Routines for premise and rule selection in an inference process.
In problem solving, the overall processes consist of basic steps (following inference rules) composed by a control mechanism (such as state-space search), as shown in the slogan "Algorithm = Logic + Control", where the two aspects are relatively independent. This paradigm is different from the traditional paradigm ("Algorithms + Data structures = Programs"), where the justification is given to the whole algorithm, rather than directly to the individual steps.
2. Theorem proving
Theorem proving (or automated reasoning):
deriving theorems from axioms, with the following typical design:
Example:
This technique has been applied outside axiomatic systems by using reliable knowledge (facts, authority opinions, "ground truth") as axioms.
Example:
3. Non-monotonic reasoning
There have been many attempts of revising or extending classical logic to make it closer to everyday thinking, which lead to various non-classical logics.
One such attempt in AI takes commonsense reasoning as carrying out defeasible reasoning when information is incomplete, and and system is open to new evidence and can withdraw previous conclusions. This type of logic is usually called
non-monotonic logic.
Related techniques include:
Reading
- Poole and Mackworth: Chapters 5 & 15
- Russell and Norvig: Chapters 7 & 8 & 9
- Luger: Chapters 2, Sections 14.1-2