There is almost no chance that Bernhard is green. There is almost no chance that Sandra dropped the milk. It is unlikely that Mary went to the office. It is improbable that if 'Bernhard is green' or 'Sandra dropped the milk' or both then Greg is a swan. It is impossible that if 'Sandra dropped the milk and Bernhard is green' then Brian is a frog. There is a better than even chance that if 'Bernhard is green' or 'Mary went to the office' or both then Antoine is thirsty.
It is probably the case that 'Sandra dropped the milk' or 'Antoine is thirsty' or both.
There is little chance that 'Sandra dropped the milk' or 'Antoine is thirsty' or both.
It is probably the case that 'Sandra dropped the milk' or 'Antoine is thirsty' 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.02::factA.
  0.02::factB.
  0.2::factC.
  %hop1
  0.1::factX:-or(factA,factB).
  0.0::factY:-and(factB,factA).
  0.6::factZ:-or(factA,factC).

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

  query(conclusion).
  
'Sandra dropped the milk' or 'Antoine is thirsty' or both.