Chances are about even that Bernhard is green. Chances are about even that Jeff discarded the milk. We doubt that Mary left the milk. It is impossible that if 'Bernhard is green and Mary left the milk' then Winona is a cat. It is improbable that if 'Mary left the milk and Jeff discarded the milk' then John took the football. It is certain that if 'Bernhard is green' or 'Jeff discarded the milk' or both then Julius is a frog.
It is impossible that 'Bernhard is green and John took the football'.
It is impossible that 'Bernhard is green and John took the football'.
It is likely that 'Bernhard is green and John took the football'.

  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.5::factA.
  0.5::factB.
  0.2::factC.
  %hop1
  0.0::factX:-and(factA,factC).
  0.1::factY:-and(factC,factB).
  1.0::factZ:-or(factA,factB).

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

  query(conclusion).
  
'Bernhard is green and John took the football'.