It is unlikely that Julius is a rhino. It is probably the case that Jeff moved to the garden. It is certain that Jason is tired. There is little chance that if either 'Jeff moved to the garden' or 'Julius is a rhino' but not both then Jessica is a cat. It is probably not the case that if 'Jeff moved to the garden' or 'Julius is a rhino' or both then John dropped the milk. There is little chance that if either 'Jeff moved to the garden' or 'Jason is tired' but not both then Brian is a frog.
It is probably not the case that either 'Julius is a rhino' or 'John dropped the milk' but not both.
It is probably not the case that either 'Julius is a rhino' or 'John dropped the milk' but not both.
It is almost certain that either 'Julius is a rhino' or 'John dropped the milk' 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.2::factA.
  0.7::factB.
  1.0::factC.
  %hop1
  0.1::factX:-xor(factB,factA).
  0.25::factY:-or(factB,factA).
  0.1::factZ:-xor(factB,factC).

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

  query(conclusion).
  
Either 'Julius is a rhino' or 'John dropped the milk' but not both.