jcreek.representation.inference
Class SubclassInheritanceMethod
java.lang.Object
jcreek.representation.inference.SpreadingActivationRule
jcreek.representation.inference.InheritanceMethod
jcreek.representation.inference.SubclassInheritanceMethod
- public class SubclassInheritanceMethod
- extends InheritanceMethod
Method Summary |
boolean |
accept(Explanation path)
Returns true if the rule can accept the Explanation path. |
boolean |
accept(Relation target)
Returns true if we can accept the Relation target. |
boolean |
accept(Relation from,
Entity next)
Returns true if we can accept the Entity target from the Relation from. |
boolean |
acceptInheritance(Relation target)
|
boolean |
reenter(Entity target)
This method is called on an entity that has already been spread through, to see if
we should spread through it again. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SubclassInheritanceMethod
public SubclassInheritanceMethod()
accept
public boolean accept(Relation target)
- Description copied from class:
SpreadingActivationRule
- Returns true if we can accept the Relation target. Acceptance
means the entity will be added to the set of entites spread to.
- Specified by:
accept
in class SpreadingActivationRule
accept
public boolean accept(Relation from,
Entity next)
- Description copied from class:
SpreadingActivationRule
- Returns true if we can accept the Entity target from the Relation from. Acceptance
means the entity will be added to the set of entites spread to.
- Specified by:
accept
in class SpreadingActivationRule
accept
public boolean accept(Explanation path)
- Description copied from class:
SpreadingActivationRule
- Returns true if the rule can accept the Explanation path.
- Specified by:
accept
in class SpreadingActivationRule
acceptInheritance
public boolean acceptInheritance(Relation target)
- Specified by:
acceptInheritance
in class InheritanceMethod
reenter
public boolean reenter(Entity target)
- Description copied from class:
SpreadingActivationRule
- This method is called on an entity that has already been spread through, to see if
we should spread through it again. It has the same function as enter(), but while
enter() is only called the FIRST time an entity is encountered during the spreading
activation, reenter() is called the following times.
WARNING: This method practically defines the complexity of the spreading operation.
If this method is always false, the complexity is linear with the number of concepts in
the model. If there is no cap on how many times an entity can be reconsidered, the
worst case complexity is infinite!
Complexity formula: O(c * n) where
c = number of concepts in the model
n = number of times a single entity can be reconsidered.
- Overrides:
reenter
in class SpreadingActivationRule
Created at IDI, NTNU by the Artificial Intelligence and Learning group