We believe that Winona is a mouse. It is likely that Brian is white. It is highly likely that Daniel got the milk. It is unlikely that if either 'Daniel got the milk' or 'Brian is white' but not both then Julius is a lion. It is impossible that if 'Daniel got the milk and Winona is a mouse' then Bernhard is a rhino. There is almost no chance that if 'Daniel got the milk and Winona is a mouse' then Bill went to the garden.
There is almost no chance that 'Bernhard is a rhino' or 'Winona is a mouse' or both.
We believe that 'Bernhard is a rhino' or 'Winona is a mouse' or both.
There is almost no chance that 'Bernhard is a rhino' or 'Winona is a mouse' 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.75::factA.
  0.7::factB.
  0.9::factC.
  %hop1
  0.2::factX:-xor(factC,factB).
  0.0::factY:-and(factC,factA).
  0.02::factZ:-and(factC,factA).

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

  query(conclusion).
  
'Bernhard is a rhino' or 'Winona is a mouse' or both.