context: It is highly likely that Winona is a sheep. It is probably the case that Brian is white. We doubt that Sandra took the football. It is probable that if either 'Sandra took the football' or 'Brian is white' but not both then Mary discarded the milk. It is almost certain that if 'Sandra took the football' or 'Winona is a sheep' or both then John got the milk. There is almost no chance that if either 'Brian is white' or 'Winona is a sheep' but not both then Lily is a rhino.
hypothesis: There is a better than even chance that 'John got the milk and Brian is white'.
valid_hypothesis: There is a better than even chance that 'John got the milk and Brian is white'.
invalid_hypothesis: It is highly unlikely that 'John got the milk and Brian is white'.
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.9::factA.
    0.7::factB.
    0.2::factC.
    %hop1
    0.7::factX:-xor(factC,factB).
    0.95::factY:-or(factC,factA).
    0.02::factZ:-xor(factB,factA).
  
    %hop2
    conclusion:-and(factY,factB).
  
    query(conclusion).
    
hypothesis_assertion: 'John got the milk and Brian is white'.