context: It is probably the case that Greg is a frog. It is unlikely that Yann is tired. It is probably not the case that Mary picked up the milk. It is probable that if either 'Mary picked up the milk' or 'Yann is tired' but not both then Brian is green. It is improbable that if 'Mary picked up the milk' or 'Yann is tired' or both then Daniel left the apple. It is likely that if 'Mary picked up the milk and Greg is a frog' then Lily is yellow.
hypothesis: There is a very good chance that 'Brian is green' or 'Daniel left the apple' or both.
valid_hypothesis: It is probably not the case that 'Brian is green' or 'Daniel left the apple' or both.
invalid_hypothesis: There is a very good chance that 'Brian is green' or 'Daniel left 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.2::factB.
    0.25::factC.
    %hop1
    0.7::factX:-xor(factC,factB).
    0.1::factY:-or(factC,factB).
    0.7::factZ:-and(factC,factA).
  
    %hop2
    conclusion:-or(factX,factY).
  
    query(conclusion).
    
hypothesis_assertion: 'Brian is green' or 'Daniel left the apple' or both.