Closed patham9 closed 2 years ago
Avoidance of neg. outcomes is now already considered also using the goal deduction truth func which allows neg. evidence to be propagated. Negation handling will be using https://github.com/opennars/OpenNARS-for-Applications/tree/NegationExploration whereby we still use different concepts (no big overhead as implication tables are the main storage eater) but can potentially make sure revision will happen in both.
Merge A and --A into the same concept as suggested by https://github.com/automenta , plus adding <A =/> (-- B)> implication table that is maintained via observing non-negated events by using the equality between (-- <A =/> B>) and <A =/> (-- B)>. This will allow the system to learn avoidance of stimuli by default (rather than just how to achieve them), not just when they occur as a negation. Also, a possibility to control this is to let <A =/> B> implications with f < 0.5 glide into the avoidance table.
This also points to a way to handle negative goals better, the story of how to act competently with multiple active, potentially contradicting, goals, needs to be improved.
Discussion reference: https://github.com/opennars/OpenNARS-for-Applications/pull/204