context: It is highly likely that Greg is a rhino. It is probably the case that Sandra left the milk. There is almost no chance that Mary went to the hallway. It is improbable that if 'Sandra left the milk and Mary went to the hallway' then Lily is a swan. There is little chance that if 'Mary went to the hallway' or 'Sandra left the milk' or both then John moved to the office. It is certain that if 'Sandra left the milk and Mary went to the hallway' then Winona is a mouse.
hypothesis: There is almost no chance that 'Greg is a rhino and Mary went to the hallway'.
valid_hypothesis: There is almost no chance that 'Greg is a rhino and Mary went to the hallway'.
invalid_hypothesis: It is highly likely that 'Greg is a rhino and Mary 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.9::factA.
    0.7::factB.
    0.02::factC.
    %hop1
    0.1::factX:-and(factB,factC).
    0.1::factY:-or(factC,factB).
    1.0::factZ:-and(factB,factC).
  
    %hop2
    conclusion:-and(factA,factC).
  
    query(conclusion).
    
hypothesis_assertion: 'Greg is a rhino and Mary went to the hallway'.