context: We doubt that John picked up the apple. There is little chance that Jeff moved to the office. There is little chance that Mary went to the garden. It is certain that if 'John picked up the apple' or 'Mary went to the garden' or both then Brian is a lion. It is impossible that if either 'Mary went to the garden' or 'John picked up the apple' but not both then Sandra left the football. There is almost no chance that if 'Jeff moved to the office' or 'John picked up the apple' or both then Julius is yellow.
hypothesis: It is unlikely that 'Jeff moved to the office' or 'Mary went to the garden' or both.
valid_hypothesis: It is unlikely that 'Jeff moved to the office' or 'Mary went to the garden' or both.
invalid_hypothesis: It is almost certain that 'Jeff moved to the office' or 'Mary went to the garden' 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.1::factB.
    0.1::factC.
    %hop1
    1.0::factX:-or(factA,factC).
    0.0::factY:-xor(factC,factA).
    0.02::factZ:-or(factB,factA).
  
    %hop2
    conclusion:-or(factB,factC).
  
    query(conclusion).
    
hypothesis_assertion: 'Jeff moved to the office' or 'Mary went to the garden' or both.