There is a very good chance that Brian is white. It is certain that Bernhard is white. We doubt that Daniel dropped the apple. Chances are about even that if 'Brian is white' or 'Bernhard is white' or both then Winona is a wolf. There is a very good chance that if either 'Brian is white' or 'Bernhard is white' but not both then Julius is a lion. It is highly unlikely that if either 'Brian is white' or 'Daniel dropped the apple' but not both then Mary went to the hallway.
It is unlikely that either 'Mary went to the hallway' or 'Bernhard is white' but not both.
It is almost certain that either 'Mary went to the hallway' or 'Bernhard is white' but not both.
It is unlikely that either 'Mary went to the hallway' or 'Bernhard is white' 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.
  1.0::factB.
  0.2::factC.
  %hop1
  0.5::factX:-or(factA,factB).
  0.8::factY:-xor(factA,factB).
  0.05::factZ:-xor(factA,factC).

  %hop2
  conclusion:-xor(factZ,factB).

  query(conclusion).
  
Either 'Mary went to the hallway' or 'Bernhard is white' but not both.