It is probable that Bernhard is a frog. It is highly likely that Brian is a rhino. It is probably not the case that Jason is tired. It is highly likely that if 'Jason is tired' or 'Brian is a rhino' or both then John put down the apple. We doubt that if either 'Bernhard is a frog' or 'Jason is tired' but not both then Lily is a swan. It is almost certain that if 'Jason is tired and Bernhard is a frog' then Mary left the football.
It is likely that either 'Mary left the football' or 'John put down the apple' but not both.
It is likely that either 'Mary left the football' or 'John put down the apple' but not both.
It is highly unlikely that either 'Mary left the football' or 'John put down 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.7::factA.
  0.9::factB.
  0.25::factC.
  %hop1
  0.9::factX:-or(factC,factB).
  0.2::factY:-xor(factA,factC).
  0.95::factZ:-and(factC,factA).

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

  query(conclusion).
  
Either 'Mary left the football' or 'John put down the apple' but not both.