It is almost certain that Mary left the milk. It is probable that Bernhard is a frog. There is almost no chance that John discarded the apple. We believe that if 'John discarded the apple and Mary left the milk' then Winona is a cat. It is improbable that if 'Mary left the milk' or 'John discarded the apple' or both then Brian is gray. It is likely that if 'Mary left the milk and John discarded the apple' then Lily is white.
It is impossible that 'Mary left the milk and Bernhard is a frog'.
It is probable that 'Mary left the milk and Bernhard is a frog'.
It is impossible that 'Mary left the milk and Bernhard is a frog'.

  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.7::factB.
  0.02::factC.
  %hop1
  0.75::factX:-and(factC,factA).
  0.1::factY:-or(factA,factC).
  0.7::factZ:-and(factA,factC).

  %hop2
  conclusion:-and(factA,factB).

  query(conclusion).
  
'Mary left the milk and Bernhard is a frog'.