It is probable that Julius is white. It is probably the case that Greg is a rhino. Chances are about even that Mary went to the bedroom. It is highly likely that if 'Julius is white and Greg is a rhino' then Brian is green. It is certain that if 'Julius is white and Mary went to the bedroom' then Bernhard is a lion. It is probably the case that if 'Mary went to the bedroom' or 'Greg is a rhino' or both then Lily is yellow.
Chances are about even that either 'Mary went to the bedroom' or 'Lily is yellow' but not both.
Chances are about even that either 'Mary went to the bedroom' or 'Lily is yellow' but not both.
It is impossible that either 'Mary went to the bedroom' 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.7::factA.
  0.7::factB.
  0.5::factC.
  %hop1
  0.9::factX:-and(factA,factB).
  1.0::factY:-and(factA,factC).
  0.7::factZ:-or(factC,factB).

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

  query(conclusion).
  
Either 'Mary went to the bedroom' or 'Lily is yellow' but not both.