context: We believe that John picked up the milk. We believe that Greg is a lion. There is little chance that Fred put down the apple. It is probably not the case that if 'Fred put down the apple and John picked up the milk' then Antoine is thirsty. There is almost no chance that if either 'John picked up the milk' or 'Fred put down the apple' but not both then Mary went to the garden. There is a very good chance that if 'Fred put down the apple' or 'Greg is a lion' or both then Brian is a rhino.
hypothesis: There is a better than even chance that 'Greg is a lion and John picked up the milk'.
valid_hypothesis: There is a better than even chance that 'Greg is a lion and John picked up the milk'.
invalid_hypothesis: There is little chance that 'Greg is a lion and John picked up the milk'.
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.75::factA.
    0.75::factB.
    0.1::factC.
    %hop1
    0.25::factX:-and(factC,factA).
    0.02::factY:-xor(factA,factC).
    0.8::factZ:-or(factC,factB).
  
    %hop2
    conclusion:-and(factB,factA).
  
    query(conclusion).
    
hypothesis_assertion: 'Greg is a lion and John picked up the milk'.