It is almost certain that Gertrude is a wolf. There is almost no chance that Lily is a swan. Chances are slight that Brian is yellow. We doubt that if 'Lily is a swan and Gertrude is a wolf' then Antoine is bored. Chances are slight that if either 'Lily is a swan' or 'Gertrude is a wolf' but not both then Julius is white. It is probably not the case that if 'Brian is yellow' or 'Gertrude is a wolf' or both then Mary took the milk.
It is probably not the case that either 'Mary took the milk' or 'Julius is white' but not both.
It is probably not the case that either 'Mary took the milk' or 'Julius is white' but not both.
It is probable that either 'Mary took the milk' or 'Julius 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.95::factA.
  0.02::factB.
  0.1::factC.
  %hop1
  0.2::factX:-and(factB,factA).
  0.1::factY:-xor(factB,factA).
  0.25::factZ:-or(factC,factA).

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

  query(conclusion).
  
Either 'Mary took the milk' or 'Julius is white' but not both.