It is almost certain that Daniel left the milk. It is certain that Greg is a frog. It is probably not the case that Julius is white. We doubt that if 'Daniel left the milk' or 'Greg is a frog' or both then Mary went to the bedroom. It is probably the case that if either 'Daniel left the milk' or 'Julius is white' but not both then Brian is green. It is highly likely that if 'Daniel left the milk' or 'Julius is white' or both then John dropped the apple.
It is probably the case that either 'John dropped the apple' or 'Julius is white' but not both.
It is probably the case that either 'John dropped the apple' or 'Julius is white' but not both.
It is highly unlikely that either 'John dropped the apple' or 'Julius 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.95::factA.
  1.0::factB.
  0.25::factC.
  %hop1
  0.2::factX:-or(factA,factB).
  0.7::factY:-xor(factA,factC).
  0.9::factZ:-or(factA,factC).

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

  query(conclusion).
  
Either 'John dropped the apple' or 'Julius is white' but not both.