Chances are slight that Lily is green. It is highly unlikely that Brian is white. There is little chance that Greg is yellow. We believe that if either 'Greg is yellow' or 'Brian is white' but not both then Bernhard is a rhino. There is little chance that if 'Greg is yellow' or 'Lily is green' or both then Mary got the milk. It is almost certain that if 'Brian is white' or 'Lily is green' or both then John dropped the apple.
Chances are slight that either 'John dropped the apple' or 'Brian is white' but not both.
Chances are slight that either 'John dropped the apple' or 'Brian is white' but not both.
There is a better than even chance that either 'John dropped the apple' or 'Brian is white' 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.05::factB.
  0.1::factC.
  %hop1
  0.75::factX:-xor(factC,factB).
  0.1::factY:-or(factC,factA).
  0.95::factZ:-or(factB,factA).

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

  query(conclusion).
  
Either 'John dropped the apple' or 'Brian is white' but not both.