It is highly likely that Jessica is a mouse. It is improbable that Mary went to the bedroom. It is highly unlikely that Lily is yellow. It is impossible that if either 'Lily is yellow' or 'Mary went to the bedroom' but not both then Daniel took the apple. It is likely that if 'Jessica is a mouse and Lily is yellow' then Julius is white. There is little chance that if 'Lily is yellow and Mary went to the bedroom' then Emily is a cat.
There is almost no chance that either 'Julius is white' or 'Lily is yellow' but not both.
There is almost no chance that either 'Julius is white' or 'Lily is yellow' but not both.
There is a better than even chance that either 'Julius is white' or 'Lily is yellow' 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.1::factB.
  0.05::factC.
  %hop1
  0.0::factX:-xor(factC,factB).
  0.7::factY:-and(factA,factC).
  0.1::factZ:-and(factC,factB).

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

  query(conclusion).
  
Either 'Julius is white' or 'Lily is yellow' but not both.