There is a very good chance that John went to the bedroom. There is almost no chance that Sandra dropped the milk. There is little chance that Julius is white. It is highly likely that if either 'Julius is white' or 'John went to the bedroom' but not both then Bernhard is a frog. There is a better than even chance that if 'John went to the bedroom and Sandra dropped the milk' then Daniel left the milk. There is little chance that if either 'John went to the bedroom' or 'Sandra dropped the milk' but not both then Brian is white.
It is almost certain that either 'Bernhard is a frog' or 'John went to the bedroom' but not both.
It is unlikely that either 'Bernhard is a frog' or 'John went to the bedroom' but not both.
It is almost certain that either 'Bernhard is a frog' or 'John went to the bedroom' but not 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.8::factA.
  0.02::factB.
  0.1::factC.
  %hop1
  0.9::factX:-xor(factC,factA).
  0.6::factY:-and(factA,factB).
  0.1::factZ:-xor(factA,factB).

  %hop2
  conclusion:-xor(factX,factA).

  query(conclusion).
  
Either 'Bernhard is a frog' or 'John went to the bedroom' but not both.