It is almost certain that Julius is white. There is a better than even chance that Mary went to the hallway. It is likely that John moved to the office. It is unlikely that if either 'Mary went to the hallway' or 'John moved to the office' but not both then Sumit is hungry. It is probably not the case that if either 'Mary went to the hallway' or 'John moved to the office' but not both then Brian is a frog. It is certain that if 'Julius is white' or 'John moved to the office' or both then Lily is a swan.
It is unlikely that either 'Sumit is hungry' or 'Brian is a frog' but not both.
It is unlikely that either 'Sumit is hungry' or 'Brian is a frog' but not both.
It is certain that either 'Sumit is hungry' or 'Brian is a frog' 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.95::factA.
  0.6::factB.
  0.7::factC.
  %hop1
  0.2::factX:-xor(factB,factC).
  0.25::factY:-xor(factB,factC).
  1.0::factZ:-or(factA,factC).

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

  query(conclusion).
  
Either 'Sumit is hungry' or 'Brian is a frog' but not both.