context: There is little chance that John moved to the garden. It is impossible that Mary left the football. We doubt that Lily is gray. It is highly likely that if 'Lily is gray' or 'Mary left the football' or both then Julius is a frog. There is little chance that if either 'Mary left the football' or 'John moved to the garden' but not both then Bernhard is a frog. It is probably not the case that if either 'John moved to the garden' or 'Mary left the football' but not both then Brian is a rhino.
hypothesis: It is probably not the case that either 'John moved to the garden' or 'Lily is gray' but not both.
valid_hypothesis: It is probably not the case that either 'John moved to the garden' or 'Lily is gray' but not both.
invalid_hypothesis: We believe that either 'John moved to the garden' or 'Lily is gray' but not 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.1::factA.
    0.0::factB.
    0.2::factC.
    %hop1
    0.9::factX:-or(factC,factB).
    0.1::factY:-xor(factB,factA).
    0.25::factZ:-xor(factA,factB).
  
    %hop2
    conclusion:-xor(factA,factC).
  
    query(conclusion).
    
hypothesis_assertion: Either 'John moved to the garden' or 'Lily is gray' but not both.