It is unlikely that Bill went to the bedroom. Chances are about even that Brian is gray. It is likely that John got the milk. It is probable that if either 'John got the milk' or 'Brian is gray' but not both then Greg is a frog. Chances are slight that if either 'Bill went to the bedroom' or 'John got the milk' but not both then Bernhard is green. It is highly likely that if 'Bill went to the bedroom and Brian is gray' then Mary is in the hallway.
Chances are about even that 'Bernhard is green and Greg is a frog'.
There is almost no chance that 'Bernhard is green and Greg is a frog'.
Chances are about even that 'Bernhard is green and Greg 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.2::factA.
  0.5::factB.
  0.7::factC.
  %hop1
  0.7::factX:-xor(factC,factB).
  0.1::factY:-xor(factA,factC).
  0.9::factZ:-and(factA,factB).

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

  query(conclusion).
  
'Bernhard is green and Greg is a frog'.