context: It is improbable that Bill went to the office. It is probably the case that Winona is a wolf. It is probable that Mary left the football. Chances are about even that if either 'Winona is a wolf' or 'Bill went to the office' but not both then Yann is tired. It is highly unlikely that if either 'Bill went to the office' or 'Winona is a wolf' but not both then Lily is white. It is probably not the case that if 'Bill went to the office' or 'Mary left the football' or both then Jason is bored.
hypothesis: It is probably not the case that 'Bill went to the office' or 'Jason is bored' or both.
valid_hypothesis: It is probably not the case that 'Bill went to the office' or 'Jason is bored' or both.
invalid_hypothesis: It is almost certain that 'Bill went to the office' or 'Jason is bored' 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.1::factA.
    0.7::factB.
    0.7::factC.
    %hop1
    0.5::factX:-xor(factB,factA).
    0.05::factY:-xor(factA,factB).
    0.25::factZ:-or(factA,factC).
  
    %hop2
    conclusion:-or(factA,factZ).
  
    query(conclusion).
    
hypothesis_assertion: 'Bill went to the office' or 'Jason is bored' or both.