It is certain that John went to the garden. It is almost certain that Lily is gray. It is impossible that Mary took the milk. Chances are about even that if either 'John went to the garden' or 'Mary took the milk' but not both then Julius is a lion. We believe that if 'Lily is gray' or 'Mary took the milk' or both then Brian is a rhino. It is highly unlikely that if either 'John went to the garden' or 'Mary took the milk' but not both then Fred left the apple.
Chances are about even that either 'Julius is a lion' or 'Mary took the milk' but not both.
Chances are about even that either 'Julius is a lion' or 'Mary took the milk' but not both.
It is almost certain that either 'Julius is a lion' or 'Mary took the milk' 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
  1.0::factA.
  0.95::factB.
  0.0::factC.
  %hop1
  0.5::factX:-xor(factA,factC).
  0.75::factY:-or(factB,factC).
  0.05::factZ:-xor(factA,factC).

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

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