Chances are slight that Lily is a swan. It is certain that Jason is tired. There is a better than even chance that John took the apple. Chances are slight that if 'Lily is a swan' or 'Jason is tired' or both then Mary got the milk. We believe that if 'Jason is tired' or 'John took the apple' or both then Jeff moved to the garden. It is probable that if 'Lily is a swan' or 'Jason is tired' or both then Brian is yellow.
It is highly likely that either 'Mary got the milk' or 'Jason is tired' but not both.
It is highly likely that either 'Mary got the milk' or 'Jason is tired' but not both.
It is highly unlikely that either 'Mary got the milk' or 'Jason is tired' 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.1::factA.
  1.0::factB.
  0.6::factC.
  %hop1
  0.1::factX:-or(factA,factB).
  0.75::factY:-or(factB,factC).
  0.7::factZ:-or(factA,factB).

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

  query(conclusion).
  
Either 'Mary got the milk' or 'Jason is tired' but not both.