context: It is probably not the case that John picked up the milk. It is almost certain that Greg is yellow. It is likely that Bernhard is gray. There is a very good chance that if 'Greg is yellow and John picked up the milk' then Lily is a rhino. It is likely that if either 'Bernhard is gray' or 'John picked up the milk' but not both then Sandra dropped the milk. It is almost certain that if either 'John picked up the milk' or 'Greg is yellow' but not both then Daniel left the apple.
hypothesis: Chances are slight that 'Bernhard is gray' or 'Greg is yellow' or both.
valid_hypothesis: It is certain that 'Bernhard is gray' or 'Greg is yellow' or both.
invalid_hypothesis: Chances are slight that 'Bernhard is gray' or 'Greg is yellow' 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.25::factA.
    0.95::factB.
    0.7::factC.
    %hop1
    0.8::factX:-and(factB,factA).
    0.7::factY:-xor(factC,factA).
    0.95::factZ:-xor(factA,factB).
  
    %hop2
    conclusion:-or(factC,factB).
  
    query(conclusion).
    
hypothesis_assertion: 'Bernhard is gray' or 'Greg is yellow' or both.