Chances are slight that Mary went to the garden. Chances are about even that Julius is white. It is certain that Bernhard is gray. Chances are about even that if 'Bernhard is gray' or 'Julius is white' or both then Daniel got the milk. There is a very good chance that if 'Julius is white' or 'Mary went to the garden' or both then Lily is a swan. There is a better than even chance that if 'Julius is white' or 'Mary went to the garden' or both then John took the football.
Chances are about even that 'Daniel got the milk' or 'Bernhard is gray' or both.
It is certain that 'Daniel got the milk' or 'Bernhard is gray' or both.
Chances are about even that 'Daniel got the milk' or 'Bernhard is gray' 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.5::factB.
  1.0::factC.
  %hop1
  0.5::factX:-or(factC,factB).
  0.8::factY:-or(factB,factA).
  0.6::factZ:-or(factB,factA).

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

  query(conclusion).
  
'Daniel got the milk' or 'Bernhard is gray' or both.