Chances are slight that Bernhard is a rhino. There is little chance that Lily is a frog. It is certain that Julius is white. It is probable that if either 'Bernhard is a rhino' or 'Lily is a frog' but not both then Gertrude is a mouse. It is almost certain that if 'Julius is white and Lily is a frog' then John picked up the milk. Chances are slight that if 'Julius is white and Lily is a frog' then Bill went to the garden.
It is certain that 'Bill went to the garden' or 'Julius is white' or both.
It is certain that 'Bill went to the garden' or 'Julius is white' or both.
There is almost no chance that 'Bill went to the garden' or 'Julius 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.1::factA.
  0.1::factB.
  1.0::factC.
  %hop1
  0.7::factX:-xor(factA,factB).
  0.95::factY:-and(factC,factB).
  0.1::factZ:-and(factC,factB).

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

  query(conclusion).
  
'Bill went to the garden' or 'Julius is white' or both.