context: It is probably the case that Julius is green. It is likely that Mary discarded the milk. It is probable that John went to the kitchen. We doubt that if 'John went to the kitchen and Julius is green' then Greg is yellow. It is almost certain that if 'John went to the kitchen' or 'Julius is green' or both then Sandra dropped the apple. There is a very good chance that if either 'John went to the kitchen' or 'Julius is green' but not both then Bernhard is white.
hypothesis: It is highly unlikely that either 'John went to the kitchen' or 'Julius is green' but not both.
valid_hypothesis: Chances are about even that either 'John went to the kitchen' or 'Julius is green' but not both.
invalid_hypothesis: It is highly unlikely that either 'John went to the kitchen' or 'Julius is green' 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.7::factA.
    0.7::factB.
    0.7::factC.
    %hop1
    0.2::factX:-and(factC,factA).
    0.95::factY:-or(factC,factA).
    0.8::factZ:-xor(factC,factA).
  
    %hop2
    conclusion:-xor(factC,factA).
  
    query(conclusion).
    
hypothesis_assertion: Either 'John went to the kitchen' or 'Julius is green' but not both.