join from the right

Ryan Minor
  • Ryan Minor

    Ryan Minor - 2010-12-23

    I am wondering if someone can explain briefly or point to a source that discusses what is a "join from the right"?

  • Gary Riley

    Gary Riley - 2011-01-02

    Joins from the right allow more complex topologies to be supported by the join network, specifically groups of nested patterns within a not conditional element:

    (defrule example
    (a ?x)
    (not (b ?x)
            (not (and (c ?x)
                          (d ?x))))

    In early implementations of the rete algorithm, the right input to a join was an alpha memory (a pattern matching a single fact). Joins from the right allow the right input to be a beta memory (a group of patterns). There's an article on of the rete algorithm on wikipedia: This paper by Doorenbos,, also describes a method for handling what it refers to as conjunctive negations which is similar to the method used by CLIPS in versions prior to 6.3


Log in to post a comment.