From 6f735d200dda6707f8b3714b27d11da3d8d5bbd0 Mon Sep 17 00:00:00 2001
From: Patrick Hammer <patham9@gmail.com>
Date: Fri, 6 Apr 2018 18:42:29 -0400
Subject: [PATCH] Inference bugfix: Overlap check again for different termlink,
 else too restrictive.

---
 nars_core/nars/inference/RuleTables.java | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/nars_core/nars/inference/RuleTables.java b/nars_core/nars/inference/RuleTables.java
index e97ab504aa..55931bb8a6 100644
--- a/nars_core/nars/inference/RuleTables.java
+++ b/nars_core/nars/inference/RuleTables.java
@@ -105,14 +105,10 @@ public class RuleTables {
             }*/
             
             //too restrictive, its checked for non-deductive inference rules in derivedTask (also for single prem)
-            if(Stamp.baseOverlap(task.sentence.stamp.evidentialBase, belief.stamp.evidentialBase)) {
-                nal.evidentalOverlap = true;
-                if(!task.sentence.isEternal() || !belief.isEternal()) {
-                    return; //only allow for eternal reasoning for now to prevent derived event floods
-                }
-                //return; //preparisons are made now to support this nicely
+            nal.evidentalOverlap = Stamp.baseOverlap(task.sentence.stamp.evidentialBase, belief.stamp.evidentialBase);
+            if(nal.evidentalOverlap && (!task.sentence.isEternal() || !belief.isEternal())) {
+                return; //only allow for eternal reasoning for now to prevent derived event floods
             }
-            //comment out for recursive examples, this is for the future, it generates a lot of potentially useless tasks
             
             nal.emit(Events.BeliefReason.class, belief, beliefTerm, taskTerm, nal);
             
-- 
GitLab