It is impossible that John discarded the apple. It is almost certain that Jessica is a mouse. There is a very good chance that Bernhard is white. It is probably the case that if either 'Bernhard is white' or 'John discarded the apple' but not both then Julius is gray. We doubt that if either 'Jessica is a mouse' or 'John discarded the apple' but not both then Sandra dropped the milk. There is almost no chance that if 'Bernhard is white' or 'Jessica is a mouse' or both then Brian is a rhino.
Chances are slight that 'Sandra dropped the milk and Julius is gray'.
Chances are slight that 'Sandra dropped the milk and Julius is gray'.
There is a very good chance that 'Sandra dropped the milk and Julius is gray'.

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

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

  query(conclusion).
  
'Sandra dropped the milk and Julius is gray'.