Main Page > Networked Inference Engine > Abstractor
Overview
The purpose of the abstractor is to take what we already know and try to find relationships between data that we didn't know existed.
For example, we may have seen the phrase "2 + 2 = 4" before, but the program won't realize it simplifies to NUMBER "+" NUMBER "=" (NUMBER + NUMBER) unless it tries to add them together and realizes that it works. Note that this example could fail, however, if it simplifies it to NUMBER "+" NUMBER "=" (2 * NUMBER). This can be overcome by feeding it multiple inputs that use the same rule, like "1 + 2 = 3" and "5 + 0 = 5".
Testing each abstractor function against the current input and everything we know so far will require immense computing power, so it will need to be parallelized as much as possible.
Functions can be prioritized depending on how well they usually seem to work against certain types of inputs. For example, math functions should be used first for inputs containing mostly numbers, while 'token type' may be more useful for an input consisting of no numbers. Emotions may need to be accounted for if a human or animal is referenced in the input.
There should exist a simple method for adding functions manually. Although theoretically possible, the program is probably not going to discover the equations behind the laws of physics. Thus, entering them by hand will teach it physics. Of course, if it is able to figure them out by itself, that's even better (and ultimately aligns with the end goal of the project).
Internal Functions
General
- Token Type: Object, Modifier
- Time
- Length
Mathematical Primitives
- Addition
- Subtraction
- Multiplication
- Division
- Division remainder
- Digits to the left/right of decimal
- Count (digits, operator length)
- Digits (tenths, ones, tens, hundreds, etc)
- Average
- Median
Rule Class
- input 1
- type of input (statistics)
- input 2
- type of input (statistics)
- operator
- tree of primitives
Human Element
- Like / Dislike
- Compassion, Respect
- Optimism / Pessimism
- Fear
- Habit
