The entry point of the package is RuleTables, which dispatch the premises (a task, and maybe also a belief) to various rules, according to their type combination.
There are four major groups of inference rules:
In the system, forward inference (the task is a Judgment) and backward inference (the task is a Question) are mostly isomorphic to each other, so that the inference rules produce clonclusions with the same content for different types of tasks. However, there are exceptions. For example, backward inference does not generate compound terms.
There are three files containing numerical functions:
In each case, there may be multiple applicable rules, which will be applied in parallel. For each rule, each conclusion is formed in three stages, to determine (1) the content (as a Term), (2) the truth-value, and (3) the budget-value, roughly in that order.
Class | Description |
---|---|
BudgetFunctions |
Budget functions for resources allocation
|
CompositionalRules |
Compound term composition and decomposition rules, with two premises.
|
LocalRules |
Directly process a task by a oldBelief, with only two Terms in both.
|
RuleTables |
Table of inference rules, indexed by the TermLinks for the task and the
belief.
|
StructuralRules |
Single-premise inference rules involving compound terms.
|
SyllogisticRules |
Syllogisms: Inference rules based on the transitivity of the relation.
|
TemporalRules | |
TruthFunctions |
All truth-value (and desire-value) functions used in inference rules
|
TruthFunctions.EternalizedTruthValue |
Indicates the result of eternalization
Implements the same functionality like TruthValue
|
UtilityFunctions |
Common functions on real numbers, mostly in [0,1].
|
Enum | Description |
---|---|
BudgetFunctions.Activating | |
RuleTables.EnumFigureSide | |
TruthFunctions.EnumType |
Copyright © 2020 OpenNARS. All rights reserved.