It is probable that Mary went to the bedroom. There is almost no chance that Greg is yellow. Chances are about even that Julius is white. We believe that if 'Mary went to the bedroom and Julius is white' then Bernhard is a frog. There is a very good chance that if 'Julius is white' or 'Mary went to the bedroom' or both then Lily is a swan. It is likely that if 'Greg is yellow and Julius is white' then John got the milk.
Chances are slight that either 'Greg is yellow' or 'Lily is a swan' but not both.
It is probably the case that either 'Greg is yellow' or 'Lily is a swan' but not both.
Chances are slight that either 'Greg is yellow' or 'Lily is a swan' 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.7::factA.
  0.02::factB.
  0.5::factC.
  %hop1
  0.75::factX:-and(factA,factC).
  0.8::factY:-or(factC,factA).
  0.7::factZ:-and(factB,factC).

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

  query(conclusion).
  
Either 'Greg is yellow' or 'Lily is a swan' but not both.