context: It is probably the case that John left the milk. There is almost no chance that Brian is yellow. It is probable that Daniel grabbed the apple. We doubt that if either 'Daniel grabbed the apple' or 'John left the milk' but not both then Mary is in the hallway. There is almost no chance that if either 'Daniel grabbed the apple' or 'John left the milk' but not both then Greg is gray. It is probable that if 'Daniel grabbed the apple and Brian is yellow' then Gertrude is a sheep.
hypothesis: It is probable that 'Greg is gray' or 'Daniel grabbed the apple' or both.
valid_hypothesis: It is probable that 'Greg is gray' or 'Daniel grabbed the apple' or both.
invalid_hypothesis: It is impossible that 'Greg is gray' or 'Daniel grabbed the apple' 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.02::factB.
    0.7::factC.
    %hop1
    0.2::factX:-xor(factC,factA).
    0.02::factY:-xor(factC,factA).
    0.7::factZ:-and(factC,factB).
  
    %hop2
    conclusion:-or(factY,factC).
  
    query(conclusion).
    
hypothesis_assertion: 'Greg is gray' or 'Daniel grabbed the apple' or both.