It is certain that Fred dropped the apple. There is little chance that Sumit is thirsty. It is almost certain that Mary moved to the garden. It is probably not the case that if either 'Fred dropped the apple' or 'Mary moved to the garden' but not both then Sandra left the milk. Chances are about even that if either 'Fred dropped the apple' or 'Sumit is thirsty' but not both then Gertrude is a sheep. Chances are about even that if either 'Mary moved to the garden' or 'Fred dropped the apple' but not both then Lily is a rhino.
It is certain that 'Lily is a rhino' or 'Fred dropped the apple' or both.
It is certain that 'Lily is a rhino' or 'Fred dropped the apple' or both.
We doubt that 'Lily is a rhino' or 'Fred dropped the apple' or 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.1::factB.
  0.95::factC.
  %hop1
  0.25::factX:-xor(factA,factC).
  0.5::factY:-xor(factA,factB).
  0.5::factZ:-xor(factC,factA).

  %hop2
  conclusion:-or(factZ,factA).

  query(conclusion).
  
'Lily is a rhino' or 'Fred dropped the apple' or both.