@prefix dc: <http://purl.org/dc/elements/1.1/> .

<> dc:description """substitution of equals for equals, 3 cases""",
 "$Id: subst.n3,v 1.4 2009/02/26 17:08:01 timbl Exp $".

@prefix log: <http://www.w3.org/2000/10/swap/log#>.

@prefix : <#>.

@forAll :X, :Y, :Z, :P, :Q.

{ :X :P :Y. :X = :Z.
  :P log:notEqualTo log:forAll, log:forSome    #HIDELINE
} log:implies
 { :Z :P :Y }.

{ :X :P :Y. :P = :Q.
  :P log:notEqualTo log:forAll, log:forSome    #HIDELINE
} log:implies { :X :Q :Y }.

{ :X :P :Y. :Y = :Z.
  :P log:notEqualTo log:forAll, log:forSome    #HIDELINE
} log:implies { :X :P :Z }.


# test case...
# :bob :likes :jane.
# :jane = :theGirl.
