context: It is improbable that Antoine is bored. It is highly likely that Greg is a frog. There is a better than even chance that Sandra took the milk. There is a very good chance that if 'Greg is a frog and Sandra took the milk' then Julius is white. It is likely that if 'Antoine is bored and Sandra took the milk' then John went to the bedroom. Chances are about even that if 'Antoine is bored and Greg is a frog' then Mary left the football.
hypothesis: There is a better than even chance that either 'Mary left the football' or 'Sandra took the milk' but not both.
valid_hypothesis: There is a better than even chance that either 'Mary left the football' or 'Sandra took the milk' but not both.
invalid_hypothesis: Chances are slight that either 'Mary left the football' or 'Sandra took 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.1::factA.
    0.9::factB.
    0.6::factC.
    %hop1
    0.8::factX:-and(factB,factC).
    0.7::factY:-and(factA,factC).
    0.5::factZ:-and(factA,factB).
  
    %hop2
    conclusion:-xor(factZ,factC).
  
    query(conclusion).
    
hypothesis_assertion: Either 'Mary left the football' or 'Sandra took the milk' but not both.