context: Chances are slight that John picked up the milk. There is a better than even chance that Bill went to the garden. We believe that Sumit is thirsty. It is probably not the case that if 'Bill went to the garden' or 'Sumit is thirsty' or both then Bernhard is a swan. There is a better than even chance that if either 'John picked up the milk' or 'Bill went to the garden' but not both then Mary dropped the apple. We doubt that if 'Sumit is thirsty' or 'John picked up the milk' or both then Julius is a lion.
hypothesis: It is unlikely that either 'Julius is a lion' or 'John picked up the milk' but not both.
valid_hypothesis: It is unlikely that either 'Julius is a lion' or 'John picked up the milk' but not both.
invalid_hypothesis: It is probably the case that either 'Julius is a lion' 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.1::factA.
    0.6::factB.
    0.75::factC.
    %hop1
    0.25::factX:-or(factB,factC).
    0.6::factY:-xor(factA,factB).
    0.2::factZ:-or(factC,factA).
  
    %hop2
    conclusion:-xor(factZ,factA).
  
    query(conclusion).
    
hypothesis_assertion: Either 'Julius is a lion' or 'John picked up the milk' but not both.