context: There is a better than even chance that John put down the milk. We doubt that Bernhard is yellow. It is likely that Julius is white. It is almost certain that if 'Bernhard is yellow' or 'John put down the milk' or both then Mary went to the kitchen. Chances are slight that if 'John put down the milk' or 'Julius is white' or both then Gertrude is a mouse. There is almost no chance that if 'Bernhard is yellow and Julius is white' then Greg is a swan.
hypothesis: Chances are about even that either 'Mary went to the kitchen' or 'Julius is white' but not both.
valid_hypothesis: Chances are about even that either 'Mary went to the kitchen' or 'Julius is white' but not both.
invalid_hypothesis: It is highly unlikely that either 'Mary went to the kitchen' or 'Julius is white' 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.6::factA.
    0.2::factB.
    0.7::factC.
    %hop1
    0.95::factX:-or(factB,factA).
    0.1::factY:-or(factA,factC).
    0.02::factZ:-and(factB,factC).
  
    %hop2
    conclusion:-xor(factX,factC).
  
    query(conclusion).
    
hypothesis_assertion: Either 'Mary went to the kitchen' or 'Julius is white' but not both.