There is little chance that Brian is a frog. Chances are about even that Bernhard is a swan. It is impossible that Julius is white. It is improbable that if 'Julius is white' or 'Bernhard is a swan' or both then Greg is green. It is likely that if either 'Brian is a frog' or 'Julius is white' but not both then John dropped the apple. We doubt that if either 'Brian is a frog' or 'Bernhard is a swan' but not both then Sandra got the football.
It is probable that either 'Sandra got the football' or 'Greg is green' but not both.
Chances are slight that either 'Sandra got the football' or 'Greg is green' but not both.
It is probable that either 'Sandra got the football' or 'Greg is green' 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.5::factB.
  0.0::factC.
  %hop1
  0.1::factX:-or(factC,factB).
  0.7::factY:-xor(factA,factC).
  0.2::factZ:-xor(factA,factB).

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

  query(conclusion).
  
Either 'Sandra got the football' or 'Greg is green' but not both.