We believe that Jeff left the apple. It is unlikely that Julius is a rhino. There is almost no chance that John went to the garden. There is a better than even chance that if either 'John went to the garden' or 'Jeff left the apple' but not both then Mary dropped the milk. It is almost certain that if either 'John went to the garden' or 'Julius is a rhino' but not both then Greg is a frog. There is a very good chance that if 'Julius is a rhino and John went to the garden' then Antoine is hungry.
There is a very good chance that either 'Greg is a frog' or 'Antoine is hungry' but not both.
We doubt that either 'Greg is a frog' or 'Antoine is hungry' but not both.
There is a very good chance that either 'Greg is a frog' or 'Antoine is hungry' 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.75::factA.
  0.2::factB.
  0.02::factC.
  %hop1
  0.6::factX:-xor(factC,factA).
  0.95::factY:-xor(factC,factB).
  0.8::factZ:-and(factB,factC).

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

  query(conclusion).
  
Either 'Greg is a frog' or 'Antoine is hungry' but not both.