It is almost certain that John discarded the milk. It is highly likely that Emily is a sheep. We believe that Bernhard is green. It is highly likely that if 'John discarded the milk and Bernhard is green' then Mary went to the garden. It is likely that if 'Bernhard is green' or 'John discarded the milk' or both then Julius is a swan. We believe that if either 'Bernhard is green' or 'John discarded the milk' but not both then Brian is yellow.
It is improbable that 'John discarded the milk' or 'Mary went to the garden' or both.
It is almost certain that 'John discarded the milk' or 'Mary went to the garden' or both.
It is improbable that 'John discarded the milk' or 'Mary went 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.95::factA.
  0.9::factB.
  0.75::factC.
  %hop1
  0.9::factX:-and(factA,factC).
  0.7::factY:-or(factC,factA).
  0.75::factZ:-xor(factC,factA).

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

  query(conclusion).
  
'John discarded the milk' or 'Mary went to the garden' or both.