It is certain that Bernhard is a frog. There is almost no chance that Jessica is a mouse. It is unlikely that Julius is white. We believe that if 'Bernhard is a frog and Julius is white' then Mary went to the garden. It is likely that if either 'Bernhard is a frog' or 'Jessica is a mouse' but not both then John got the apple. There is almost no chance that if 'Bernhard is a frog and Julius is white' then Daniel grabbed the milk.
Chances are slight that either 'Daniel grabbed the milk' or 'Mary went to the garden' but not both.
Chances are slight that either 'Daniel grabbed the milk' or 'Mary went to the garden' but not both.
We believe that either 'Daniel grabbed the milk' or 'Mary went to the garden' 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.02::factB.
  0.2::factC.
  %hop1
  0.75::factX:-and(factA,factC).
  0.7::factY:-xor(factA,factB).
  0.02::factZ:-and(factA,factC).

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

  query(conclusion).
  
Either 'Daniel grabbed the milk' or 'Mary went to the garden' but not both.