context: Chances are slight that Bernhard is a rhino. It is certain that Sandra left the apple. It is impossible that Lily is white. It is probable that if either 'Sandra left the apple' or 'Lily is white' but not both then Mary took the milk. We believe that if 'Lily is white' or 'Sandra left the apple' or both then John went to the garden. There is a very good chance that if 'Sandra left the apple and Lily is white' then Julius is a frog.
hypothesis: It is likely that 'John went to the garden and Bernhard is a rhino'.
valid_hypothesis: Chances are slight that 'John went to the garden and Bernhard is a rhino'.
invalid_hypothesis: It is likely that 'John went to the garden and Bernhard is a rhino'.
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.
    1.0::factB.
    0.0::factC.
    %hop1
    0.7::factX:-xor(factB,factC).
    0.75::factY:-or(factC,factB).
    0.8::factZ:-and(factB,factC).
  
    %hop2
    conclusion:-and(factY,factA).
  
    query(conclusion).
    
hypothesis_assertion: 'John went to the garden and Bernhard is a rhino'.