context: Chances are about even that Greg is a rhino. It is highly likely that Jason is tired. It is probably the case that Mary went to the garden. It is highly unlikely that if 'Mary went to the garden and Greg is a rhino' then Emily is a wolf. There is a better than even chance that if either 'Mary went to the garden' or 'Greg is a rhino' but not both then Jessica is a cat. It is certain that if 'Jason is tired' or 'Greg is a rhino' or both then Julius is gray.
hypothesis: Chances are about even that 'Julius is gray and Emily is a wolf'.
valid_hypothesis: There is almost no chance that 'Julius is gray and Emily is a wolf'.
invalid_hypothesis: Chances are about even that 'Julius is gray and Emily is a wolf'.
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.5::factA.
    0.9::factB.
    0.7::factC.
    %hop1
    0.05::factX:-and(factC,factA).
    0.6::factY:-xor(factC,factA).
    1.0::factZ:-or(factB,factA).
  
    %hop2
    conclusion:-and(factZ,factX).
  
    query(conclusion).
    
hypothesis_assertion: 'Julius is gray and Emily is a wolf'.