It is highly likely that John grabbed the apple. It is impossible that Jeff moved to the office. It is certain that Antoine is hungry. It is probably the case that if 'Antoine is hungry' or 'John grabbed the apple' or both then Mary dropped the milk. It is improbable that if 'Antoine is hungry and John grabbed the apple' then Lily is white. Chances are about even that if 'John grabbed the apple and Antoine is hungry' then Brian is a rhino.
There is little chance that either 'Jeff moved to the office' or 'Lily is white' but not both.
There is little chance that either 'Jeff moved to the office' or 'Lily is white' but not both.
It is almost certain that either 'Jeff moved to the office' or 'Lily is white' 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.9::factA.
  0.0::factB.
  1.0::factC.
  %hop1
  0.7::factX:-or(factC,factA).
  0.1::factY:-and(factC,factA).
  0.5::factZ:-and(factA,factC).

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

  query(conclusion).
  
Either 'Jeff moved to the office' or 'Lily is white' but not both.