It is certain that John went to the hallway. It is improbable that Mary grabbed the milk. Chances are slight that Greg is a rhino. It is probable that if 'Mary grabbed the milk and John went to the hallway' then Bernhard is green. It is unlikely that if either 'Mary grabbed the milk' or 'John went to the hallway' but not both then Julius is a frog. Chances are slight that if 'Mary grabbed the milk' or 'John went to the hallway' or both then Lily is yellow.
It is improbable that 'Bernhard is green' or 'Mary grabbed the milk' or both.
It is improbable that 'Bernhard is green' or 'Mary grabbed the milk' or both.
It is certain that 'Bernhard is green' or 'Mary grabbed the milk' 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
  1.0::factA.
  0.1::factB.
  0.1::factC.
  %hop1
  0.7::factX:-and(factB,factA).
  0.2::factY:-xor(factB,factA).
  0.1::factZ:-or(factB,factA).

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

  query(conclusion).
  
'Bernhard is green' or 'Mary grabbed the milk' or both.