It is likely that John put down the apple. It is certain that Julius is a swan. There is a very good chance that Sandra got the milk. It is improbable that if 'Julius is a swan' or 'John put down the apple' or both then Bernhard is a rhino. There is a better than even chance that if either 'John put down the apple' or 'Sandra got the milk' but not both then Mary took the football. It is likely that if 'Sandra got the milk and John put down the apple' then Greg is a lion.
It is probably not the case that either 'Mary took the football' or 'Bernhard is a rhino' but not both.
It is probably not the case that either 'Mary took the football' or 'Bernhard is a rhino' but not both.
There is a very good chance that either 'Mary took the football' or 'Bernhard is a rhino' 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.
  1.0::factB.
  0.8::factC.
  %hop1
  0.1::factX:-or(factB,factA).
  0.6::factY:-xor(factA,factC).
  0.7::factZ:-and(factC,factA).

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

  query(conclusion).
  
Either 'Mary took the football' or 'Bernhard is a rhino' but not both.