There is little chance that Sandra got the football. There is almost no chance that Bill went to the garden. It is improbable that Julius is gray. It is impossible that if 'Sandra got the football' or 'Julius is gray' or both then Gertrude is a sheep. There is a very good chance that if either 'Sandra got the football' or 'Julius is gray' but not both then Bernhard is a frog. It is probably the case that if 'Bill went to the garden and Sandra got the football' then John dropped the apple.
There is little chance that either 'Sandra got the football' or 'Bernhard is a frog' but not both.
There is little chance that either 'Sandra got the football' or 'Bernhard is a frog' but not both.
It is certain that either 'Sandra got the football' or 'Bernhard is a frog' 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.
  0.02::factB.
  0.1::factC.
  %hop1
  0.0::factX:-or(factA,factC).
  0.8::factY:-xor(factA,factC).
  0.7::factZ:-and(factB,factA).

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

  query(conclusion).
  
Either 'Sandra got the football' or 'Bernhard is a frog' but not both.