context: There is almost no chance that John went to the kitchen. We believe that Brian is yellow. It is probable that Daniel took the football. It is highly unlikely that if either 'John went to the kitchen' or 'Daniel took the football' but not both then Jeff dropped the apple. It is probable that if either 'Brian is yellow' or 'Daniel took the football' but not both then Emily is a sheep. We believe that if 'Daniel took the football' or 'John went to the kitchen' or both then Bernhard is white.
hypothesis: We believe that 'Emily is a sheep and Jeff dropped the apple'.
valid_hypothesis: It is impossible that 'Emily is a sheep and Jeff dropped the apple'.
invalid_hypothesis: We believe that 'Emily is a sheep and Jeff dropped the apple'.
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.02::factA.
    0.75::factB.
    0.7::factC.
    %hop1
    0.05::factX:-xor(factA,factC).
    0.7::factY:-xor(factB,factC).
    0.75::factZ:-or(factC,factA).
  
    %hop2
    conclusion:-and(factY,factX).
  
    query(conclusion).
    
hypothesis_assertion: 'Emily is a sheep and Jeff dropped the apple'.