There is a better than even chance that Bernhard is green. It is probably not the case that Mary got the apple. It is highly unlikely that Lily is a swan. We believe that if 'Mary got the apple and Bernhard is green' then Greg is a rhino. We believe that if 'Mary got the apple and Lily is a swan' then Jessica is a wolf. It is certain that if either 'Lily is a swan' or 'Mary got the apple' but not both then John left the milk.
It is highly unlikely that either 'John left the milk' or 'Mary got the apple' but not both.
It is highly unlikely that either 'John left the milk' or 'Mary got the apple' but not both.
It is probable that either 'John left the milk' or 'Mary got the apple' 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.6::factA.
  0.25::factB.
  0.05::factC.
  %hop1
  0.75::factX:-and(factB,factA).
  0.75::factY:-and(factB,factC).
  1.0::factZ:-xor(factC,factB).

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

  query(conclusion).
  
Either 'John left the milk' or 'Mary got the apple' but not both.