context: It is probably not the case that John went to the hallway. We doubt that Julius is gray. We doubt that Bernhard is a frog. It is probably the case that if 'John went to the hallway and Julius is gray' then Winona is a wolf. It is highly likely that if either 'Julius is gray' or 'John went to the hallway' but not both then Mary left the football. There is almost no chance that if 'Julius is gray and Bernhard is a frog' then Lily is a swan.
hypothesis: It is highly unlikely that 'Julius is gray and John went to the hallway'.
valid_hypothesis: It is highly unlikely that 'Julius is gray and John went to the hallway'.
invalid_hypothesis: There is a better than even chance that 'Julius is gray and John went to the hallway'.
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.25::factA.
    0.2::factB.
    0.2::factC.
    %hop1
    0.7::factX:-and(factA,factB).
    0.9::factY:-xor(factB,factA).
    0.02::factZ:-and(factB,factC).
  
    %hop2
    conclusion:-and(factB,factA).
  
    query(conclusion).
    
hypothesis_assertion: 'Julius is gray and John went to the hallway'.