It is almost certain that Bernhard is green. It is impossible that Julius is yellow. There is almost no chance that Sandra left the milk. It is probable that if 'Sandra left the milk and Bernhard is green' then John took the apple. There is almost no chance that if either 'Sandra left the milk' or 'Bernhard is green' but not both then Mary went to the hallway. We doubt that if 'Bernhard is green' or 'Julius is yellow' or both then Lily is a frog.
It is impossible that 'Bernhard is green' or 'Julius is yellow' or both.
It is almost certain that 'Bernhard is green' or 'Julius is yellow' or both.
It is impossible that 'Bernhard is green' or 'Julius 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.95::factA.
  0.0::factB.
  0.02::factC.
  %hop1
  0.7::factX:-and(factC,factA).
  0.02::factY:-xor(factC,factA).
  0.2::factZ:-or(factA,factB).

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

  query(conclusion).
  
'Bernhard is green' or 'Julius is yellow' or both.