context: There is a better than even chance that John left the football. It is probably the case that Mary moved to the office. It is probably the case that Daniel dropped the apple. There is a better than even chance that if either 'John left the football' or 'Daniel dropped the apple' but not both then Bernhard is yellow. There is a very good chance that if 'John left the football' or 'Mary moved to the office' or both then Lily is green. It is probably not the case that if 'Mary moved to the office' or 'Daniel dropped the apple' or both then Julius is a swan.
hypothesis: There is a very good chance that 'Lily is green' or 'Mary moved to the office' or both.
valid_hypothesis: There is a very good chance that 'Lily is green' or 'Mary moved to the office' or both.
invalid_hypothesis: It is unlikely that 'Lily is green' or 'Mary moved to the office' 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.6::factA.
    0.7::factB.
    0.7::factC.
    %hop1
    0.6::factX:-xor(factA,factC).
    0.8::factY:-or(factA,factB).
    0.25::factZ:-or(factB,factC).
  
    %hop2
    conclusion:-or(factY,factB).
  
    query(conclusion).
    
hypothesis_assertion: 'Lily is green' or 'Mary moved to the office' or both.