context: It is impossible that Greg is green. There is almost no chance that Mary moved to the office. It is highly unlikely that Sandra took the football. We doubt that if 'Mary moved to the office and Greg is green' then John picked up the milk. It is impossible that if 'Sandra took the football and Greg is green' then Lily is a frog. It is probably not the case that if 'Greg is green and Sandra took the football' then Jeff went to the bedroom.
hypothesis: It is highly likely that either 'Sandra took the football' or 'John picked up the milk' but not both.
valid_hypothesis: It is highly unlikely that either 'Sandra took the football' or 'John picked up the milk' but not both.
invalid_hypothesis: It is highly likely that either 'Sandra took the football' or 'John picked up the milk' 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.0::factA.
    0.02::factB.
    0.05::factC.
    %hop1
    0.2::factX:-and(factB,factA).
    0.0::factY:-and(factC,factA).
    0.25::factZ:-and(factA,factC).
  
    %hop2
    conclusion:-xor(factC,factX).
  
    query(conclusion).
    
hypothesis_assertion: Either 'Sandra took the football' or 'John picked up the milk' but not both.