context: It is unlikely that John put down the apple. It is highly likely that Mary got the milk. It is highly unlikely that Bernhard is yellow. It is improbable that if either 'John put down the apple' or 'Mary got the milk' but not both then Brian is green. It is certain that if 'Bernhard is yellow and Mary got the milk' then Greg is white. It is probably not the case that if 'John put down the apple' or 'Mary got the milk' or both then Winona is a mouse.
hypothesis: It is probably not the case that 'Brian is green' or 'Winona is a mouse' or both.
valid_hypothesis: It is probably not the case that 'Brian is green' or 'Winona is a mouse' or both.
invalid_hypothesis: It is likely that 'Brian is green' or 'Winona is a mouse' 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.2::factA.
    0.9::factB.
    0.05::factC.
    %hop1
    0.1::factX:-xor(factA,factB).
    1.0::factY:-and(factC,factB).
    0.25::factZ:-or(factA,factB).
  
    %hop2
    conclusion:-or(factX,factZ).
  
    query(conclusion).
    
hypothesis_assertion: 'Brian is green' or 'Winona is a mouse' or both.