There is little chance that Bernhard is green. There is a better than even chance that Julius is yellow. We doubt that John went to the garden. It is impossible that if 'Julius is yellow and John went to the garden' then Daniel got the milk. There is little chance that if 'Julius is yellow' or 'Bernhard is green' or both then Greg is a lion. There is a better than even chance that if 'John went to the garden' or 'Julius is yellow' or both then Lily is a rhino.
It is highly unlikely that 'Greg is a lion' or 'Daniel got the milk' or both.
It is highly unlikely that 'Greg is a lion' or 'Daniel got the milk' or both.
It is certain that 'Greg is a lion' or 'Daniel got 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.1::factA.
  0.6::factB.
  0.2::factC.
  %hop1
  0.0::factX:-and(factB,factC).
  0.1::factY:-or(factB,factA).
  0.6::factZ:-or(factC,factB).

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

  query(conclusion).
  
'Greg is a lion' or 'Daniel got the milk' or both.