We doubt that Brian is a frog. There is a very good chance that John left the football. It is probably not the case that Mary grabbed the milk. We believe that if 'Brian is a frog' or 'Mary grabbed the milk' or both then Bernhard is yellow. There is almost no chance that if 'Mary grabbed the milk' or 'Brian is a frog' or both then Daniel dropped the apple. Chances are slight that if 'Brian is a frog and John left the football' then Julius is yellow.
We believe that either 'Julius is yellow' or 'Daniel dropped the apple' but not both.
There is almost no chance that either 'Julius is yellow' or 'Daniel dropped the apple' but not both.
We believe that either 'Julius is yellow' or 'Daniel dropped 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.2::factA.
  0.8::factB.
  0.25::factC.
  %hop1
  0.75::factX:-or(factA,factC).
  0.02::factY:-or(factC,factA).
  0.1::factZ:-and(factA,factB).

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

  query(conclusion).
  
Either 'Julius is yellow' or 'Daniel dropped the apple' but not both.