It is highly likely that Fred dropped the milk. We doubt that John left the football. It is likely that Greg is a rhino. There is a better than even chance that if either 'Fred dropped the milk' or 'John left the football' but not both then Sumit is thirsty. It is probable that if 'John left the football and Fred dropped the milk' then Lily is green. There is almost no chance that if 'John left the football and Greg is a rhino' then Bernhard is gray.
It is highly unlikely that 'Greg is a rhino' or 'John left the football' or both.
We believe that 'Greg is a rhino' or 'John left the football' or both.
It is highly unlikely that 'Greg is a rhino' or 'John left the football' 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
  0.9::factA.
  0.2::factB.
  0.7::factC.
  %hop1
  0.6::factX:-xor(factA,factB).
  0.7::factY:-and(factB,factA).
  0.02::factZ:-and(factB,factC).

  %hop2
  conclusion:-or(factC,factB).

  query(conclusion).
  
'Greg is a rhino' or 'John left the football' or both.