There is a better than even chance that Mary grabbed the milk. It is certain that Julius is green. It is improbable that Jessica is a cat. It is probably not the case that if either 'Jessica is a cat' or 'Julius is green' but not both then Brian is a frog. It is impossible that if either 'Mary grabbed the milk' or 'Julius is green' but not both then Lily is a rhino. It is impossible that if 'Mary grabbed the milk' or 'Julius is green' or both then John moved to the garden.
It is highly unlikely that either 'Mary grabbed the milk' or 'Lily is a rhino' but not both.
There is a better than even chance that either 'Mary grabbed the milk' or 'Lily is a rhino' but not both.
It is highly unlikely that either 'Mary grabbed the milk' or 'Lily is a rhino' 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.6::factA.
  1.0::factB.
  0.1::factC.
  %hop1
  0.25::factX:-xor(factC,factB).
  0.0::factY:-xor(factA,factB).
  0.0::factZ:-or(factA,factB).

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

  query(conclusion).
  
Either 'Mary grabbed the milk' or 'Lily is a rhino' but not both.