It is probably the case that Mary left the milk. It is likely that John went to the garden. It is improbable that Bernhard is yellow. It is certain that if either 'John went to the garden' or 'Mary left the milk' but not both then Sandra took the football. We believe that if 'Mary left the milk and John went to the garden' then Lily is a lion. There is little chance that if either 'Mary left the milk' or 'Bernhard is yellow' but not both then Brian is white.
There is a very good chance that either 'Sandra took the football' or 'Lily is a lion' but not both.
There is a very good chance that either 'Sandra took the football' or 'Lily is a lion' but not both.
There is little chance that either 'Sandra took the football' or 'Lily is a lion' but not both.

  and(A,B) :- A,B.
  or(A,B) :- A;B.
  nand(A,B) :- not(and(A,B)).
  nor(A,B) :- not(or(A,B)).
  xor(A,B) :- or(A,B), nand(A,B).

  %hop0
  0.7::factA.
  0.7::factB.
  0.1::factC.
  %hop1
  1.0::factX:-xor(factB,factA).
  0.75::factY:-and(factA,factB).
  0.1::factZ:-xor(factA,factC).

  %hop2
  conclusion:-xor(factX,factY).

  query(conclusion).
  
Either 'Sandra took the football' or 'Lily is a lion' but not both.