There is a very good chance that Bernhard is a lion. There is a better than even chance that Emily is a mouse. It is probably the case that Daniel dropped the milk. It is almost certain that if either 'Emily is a mouse' or 'Daniel dropped the milk' but not both then Lily is green. It is impossible that if 'Bernhard is a lion and Emily is a mouse' then John put down the apple. There is little chance that if either 'Emily is a mouse' or 'Bernhard is a lion' but not both then Brian is yellow.
There is almost no chance that 'John put down the apple' or 'Lily is green' or both.
Chances are about even that 'John put down the apple' or 'Lily is green' or both.
There is almost no chance that 'John put down the apple' or 'Lily is green' 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.8::factA.
  0.6::factB.
  0.7::factC.
  %hop1
  0.95::factX:-xor(factB,factC).
  0.0::factY:-and(factA,factB).
  0.1::factZ:-xor(factB,factA).

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

  query(conclusion).
  
'John put down the apple' or 'Lily is green' or both.