It is probably the case that John took the football. There is a very good chance that Sumit is bored. It is certain that Greg is yellow. Chances are about even that if 'Greg is yellow' or 'Sumit is bored' or both then Winona is a sheep. It is improbable that if 'Sumit is bored' or 'Greg is yellow' or both then Lily is a swan. It is certain that if either 'Greg is yellow' or 'Sumit is bored' but not both then Bernhard is yellow.
It is highly unlikely that either 'Sumit is bored' or 'John took the football' but not both.
Chances are about even that either 'Sumit is bored' or 'John took the football' but not both.
It is highly unlikely that either 'Sumit is bored' or 'John took the football' 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.8::factB.
  1.0::factC.
  %hop1
  0.5::factX:-or(factC,factB).
  0.1::factY:-or(factB,factC).
  1.0::factZ:-xor(factC,factB).

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

  query(conclusion).
  
Either 'Sumit is bored' or 'John took the football' but not both.