It is likely that Daniel grabbed the milk. There is a better than even chance that Julius is gray. It is impossible that Greg is a swan. There is little chance that if 'Greg is a swan and Julius is gray' then Antoine is bored. It is almost certain that if 'Greg is a swan and Julius is gray' then John moved to the garden. There is a better than even chance that if 'Daniel grabbed the milk and Julius is gray' then Winona is a wolf.
It is impossible that 'Julius is gray' or 'John moved to the garden' or both.
There is a better than even chance that 'Julius is gray' or 'John moved to the garden' or both.
It is impossible that 'Julius is gray' or 'John moved to the garden' 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.7::factA.
  0.6::factB.
  0.0::factC.
  %hop1
  0.1::factX:-and(factC,factB).
  0.95::factY:-and(factC,factB).
  0.6::factZ:-and(factA,factB).

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

  query(conclusion).
  
'Julius is gray' or 'John moved to the garden' or both.