Chances are slight that Lily is a frog. There is little chance that Bernhard is white. It is unlikely that Emily is a cat. It is unlikely that if 'Emily is a cat' or 'Bernhard is white' or both then Mary got the milk. It is probably not the case that if 'Bernhard is white' or 'Lily is a frog' or both then Julius is yellow. It is highly unlikely that if 'Lily is a frog' or 'Bernhard is white' or both then John went to the bedroom.
It is impossible that 'John went to the bedroom and Mary got the milk'.
It is impossible that 'John went to the bedroom and Mary got the milk'.
There is a better than even chance that 'John went to the bedroom and Mary got the milk'.

  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.1::factA.
  0.1::factB.
  0.2::factC.
  %hop1
  0.2::factX:-or(factC,factB).
  0.25::factY:-or(factB,factA).
  0.05::factZ:-or(factA,factB).

  %hop2
  conclusion:-and(factZ,factX).

  query(conclusion).
  
'John went to the bedroom and Mary got the milk'.