It is probably the case that John discarded the apple. It is certain that Emily is a sheep. It is impossible that Lily is a lion. It is almost certain that if 'Lily is a lion' or 'Emily is a sheep' or both then Sandra got the football. Chances are about even that if 'Lily is a lion and Emily is a sheep' then Daniel left the milk. It is impossible that if 'Emily is a sheep' or 'John discarded the apple' or both then Bernhard is yellow.
It is impossible that 'John discarded the apple' or 'Bernhard is yellow' or both.
It is probable that 'John discarded the apple' or 'Bernhard is yellow' or both.
It is impossible that 'John discarded the apple' or 'Bernhard is yellow' 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.
  1.0::factB.
  0.0::factC.
  %hop1
  0.95::factX:-or(factC,factB).
  0.5::factY:-and(factC,factB).
  0.0::factZ:-or(factB,factA).

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

  query(conclusion).
  
'John discarded the apple' or 'Bernhard is yellow' or both.