Chances are slight that Mary is in the school. It is improbable that Greg is a lion. It is highly likely that John took the football. Chances are about even that if either 'Mary is in the school' or 'John took the football' but not both then Brian is a frog. It is probably not the case that if 'Greg is a lion' or 'John took the football' or both then Bill went to the kitchen. It is probable that if 'Mary is in the school' or 'John took the football' or both then Julius is yellow.
Chances are about even that either 'Brian is a frog' or 'Mary is in the school' but not both.
Chances are about even that either 'Brian is a frog' or 'Mary is in the school' but not both.
It is highly unlikely that either 'Brian is a frog' or 'Mary is in the school' 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.1::factA.
  0.1::factB.
  0.9::factC.
  %hop1
  0.5::factX:-xor(factA,factC).
  0.25::factY:-or(factB,factC).
  0.7::factZ:-or(factA,factC).

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

  query(conclusion).
  
Either 'Brian is a frog' or 'Mary is in the school' but not both.