It is almost certain that Sandra took the football. It is certain that Brian is yellow. It is impossible that Mary left the football. It is probably not the case that if 'Mary left the football' or 'Brian is yellow' or both then Jason is tired. It is likely that if either 'Brian is yellow' or 'Mary left the football' but not both then Lily is green. Chances are slight that if 'Mary left the football' or 'Sandra took the football' or both then Bernhard is a frog.
It is probably not the case that either 'Lily is green' or 'Brian is yellow' but not both.
It is probably not the case that either 'Lily is green' or 'Brian is yellow' but not both.
It is probable that either 'Lily is green' or 'Brian is yellow' 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.95::factA.
  1.0::factB.
  0.0::factC.
  %hop1
  0.25::factX:-or(factC,factB).
  0.7::factY:-xor(factB,factC).
  0.1::factZ:-or(factC,factA).

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

  query(conclusion).
  
Either 'Lily is green' or 'Brian is yellow' but not both.