On 23/06/17 22:16, Andy Seaborne wrote:


On 23/06/17 22:11, Claude Warren wrote:
{noformat}
public static boolean nodeIso(Node n1, Node n2, NodeIsomorphismMap isoMap)
     {
         if ( isoMap != null ) {
             if ( n1.isBlank() && n2.isBlank() )
                 return isoMap.makeIsomorphic(n1, n2) ;
             if ( Var.isBlankNodeVar(n1) && Var.isBlankNodeVar(n2) )
                 return isoMap.makeIsomorphic(n1, n2) ;
     }
         return n1.equals(n2) ;
     }
{noformat}

Assuming:

    1. isoMap is not null
    2. if n1 is a Node_Variable
    3. and n2 is Var.asNode()
    4. and both are printed as ?x

should nodeIso return true?  Currently it does not.

They aren't .equals.

See also Node_RuleVariable.


That are different objects and much of ARQ will treat Node_Variable, not Var, as a constant term.

Where are Var and directly created Node_Variable being mixed?

     Andy


Claude

Reply via email to