context: It is improbable that Greg is yellow. There is a better than even chance that Brian is a rhino. It is improbable that Mary dropped the milk. It is almost certain that if either 'Mary dropped the milk' or 'Greg is yellow' but not both then Fred went to the garden. We doubt that if 'Mary dropped the milk and Greg is yellow' then Bernhard is gray. It is likely that if 'Brian is a rhino' or 'Mary dropped the milk' or both then Daniel grabbed the apple.
hypothesis: Chances are about even that 'Bernhard is gray and Greg is yellow'.
valid_hypothesis: It is impossible that 'Bernhard is gray and Greg is yellow'.
invalid_hypothesis: Chances are about even that 'Bernhard is gray and Greg is yellow'.
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.6::factB.
    0.1::factC.
    %hop1
    0.95::factX:-xor(factC,factA).
    0.2::factY:-and(factC,factA).
    0.7::factZ:-or(factB,factC).
  
    %hop2
    conclusion:-and(factY,factA).
  
    query(conclusion).
    
hypothesis_assertion: 'Bernhard is gray and Greg is yellow'.