context: It is probably the case that Lily is yellow. It is improbable that Bernhard is green. We doubt that Mary dropped the milk. Chances are about even that if 'Bernhard is green' or 'Mary dropped the milk' or both then Brian is a swan. It is unlikely that if 'Bernhard is green and Mary dropped the milk' then John moved to the garden. There is a better than even chance that if 'Mary dropped the milk and Bernhard is green' then Julius is white.
hypothesis: It is almost certain that 'Julius is white' or 'John moved to the garden' or both.
valid_hypothesis: There is almost no chance that 'Julius is white' or 'John moved to the garden' or both.
invalid_hypothesis: It is almost certain that 'Julius is white' or 'John moved to the garden' or 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.1::factB.
    0.2::factC.
    %hop1
    0.5::factX:-or(factB,factC).
    0.2::factY:-and(factB,factC).
    0.6::factZ:-and(factC,factB).
  
    %hop2
    conclusion:-or(factZ,factY).
  
    query(conclusion).
    
hypothesis_assertion: 'Julius is white' or 'John moved to the garden' or both.