context: There is little chance that Brian is yellow. It is almost certain that Sandra left the milk. We believe that Lily is green. It is highly unlikely that if either 'Lily is green' or 'Brian is yellow' but not both then John took the football. It is probably not the case that if 'Sandra left the milk and Lily is green' then Greg is gray. It is likely that if 'Sandra left the milk' or 'Brian is yellow' or both then Mary got the apple.
hypothesis: There is a better than even chance that either 'Brian is yellow' or 'Mary got the apple' but not both.
valid_hypothesis: There is a better than even chance that either 'Brian is yellow' or 'Mary got the apple' but not both.
invalid_hypothesis: It is improbable that either 'Brian is yellow' or 'Mary got the apple' but not both.
problog: 
    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.95::factB.
    0.75::factC.
    %hop1
    0.05::factX:-xor(factC,factA).
    0.25::factY:-and(factB,factC).
    0.7::factZ:-or(factB,factA).
  
    %hop2
    conclusion:-xor(factA,factZ).
  
    query(conclusion).
    
hypothesis_assertion: Either 'Brian is yellow' or 'Mary got the apple' but not both.