It is improbable that Emily is a cat. It is almost certain that Mary left the milk. It is improbable that Julius is yellow. Chances are slight that if 'Julius is yellow' or 'Mary left the milk' or both then Bernhard is white. It is probably the case that if either 'Julius is yellow' or 'Emily is a cat' but not both then Daniel got the apple. There is a very good chance that if 'Julius is yellow' or 'Emily is a cat' or both then John went to the bedroom.
There is a very good chance that 'Bernhard is white and Daniel got the apple'.
There is almost no chance that 'Bernhard is white and Daniel got the apple'.
There is a very good chance that 'Bernhard is white and Daniel got the apple'.

  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.1::factA.
  0.95::factB.
  0.1::factC.
  %hop1
  0.1::factX:-or(factC,factB).
  0.7::factY:-xor(factC,factA).
  0.8::factZ:-or(factC,factA).

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

  query(conclusion).
  
'Bernhard is white and Daniel got the apple'.