It is highly unlikely that Lily is a rhino. Chances are about even that Bill went to the office. It is certain that John is in the garden. It is probable that if 'Bill went to the office and Lily is a rhino' then Sandra left the milk. It is improbable that if either 'Bill went to the office' or 'Lily is a rhino' but not both then Julius is gray. There is almost no chance that if 'Bill went to the office' or 'Lily is a rhino' or both then Daniel put down the milk.
It is highly likely that 'Lily is a rhino' or 'Sandra left the milk' or both.
It is highly unlikely that 'Lily is a rhino' or 'Sandra left the milk' or both.
It is highly likely that 'Lily is a rhino' or 'Sandra left the milk' 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.05::factA.
  0.5::factB.
  1.0::factC.
  %hop1
  0.7::factX:-and(factB,factA).
  0.1::factY:-xor(factB,factA).
  0.02::factZ:-or(factB,factA).

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

  query(conclusion).
  
'Lily is a rhino' or 'Sandra left the milk' or both.