It is highly unlikely that Jeff moved to the garden. It is unlikely that Jason is tired. Chances are about even that John got the milk. It is improbable that if 'John got the milk' or 'Jeff moved to the garden' or both then Bill went to the kitchen. It is almost certain that if either 'Jason is tired' or 'John got the milk' but not both then Lily is a frog. It is highly likely that if 'John got the milk and Jeff moved to the garden' then Greg is white.
There is almost no chance that 'Lily is a frog' or 'Jason is tired' or both.
There is a better than even chance that 'Lily is a frog' or 'Jason is tired' or both.
There is almost no chance that 'Lily is a frog' or 'Jason is tired' 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.2::factB.
  0.5::factC.
  %hop1
  0.1::factX:-or(factC,factA).
  0.95::factY:-xor(factB,factC).
  0.9::factZ:-and(factC,factA).

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

  query(conclusion).
  
'Lily is a frog' or 'Jason is tired' or both.