There is a very good chance that Jeff moved to the office. It is improbable that John went to the kitchen. There is little chance that Bernhard is white. It is impossible that if 'Jeff moved to the office' or 'Bernhard is white' or both then Lily is green. Chances are about even that if 'John went to the kitchen and Jeff moved to the office' then Brian is a frog. Chances are slight that if either 'Bernhard is white' or 'Jeff moved to the office' but not both then Daniel took the milk.
It is probable that 'Daniel took the milk' or 'Bernhard is white' or both.
We doubt that 'Daniel took the milk' or 'Bernhard is white' or both.
It is probable that 'Daniel took the milk' or 'Bernhard is white' 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.8::factA.
  0.1::factB.
  0.1::factC.
  %hop1
  0.0::factX:-or(factA,factC).
  0.5::factY:-and(factB,factA).
  0.1::factZ:-xor(factC,factA).

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

  query(conclusion).
  
'Daniel took the milk' or 'Bernhard is white' or both.