context: We doubt that Sandra took the football. Chances are slight that Bernhard is yellow. There is a better than even chance that Greg is a swan. There is almost no chance that if either 'Greg is a swan' or 'Sandra took the football' but not both then Gertrude is a wolf. There is a better than even chance that if 'Sandra took the football' or 'Greg is a swan' or both then John picked up the apple. It is probably not the case that if either 'Sandra took the football' or 'Bernhard is yellow' but not both then Brian is green.
hypothesis: There is a better than even chance that either 'Gertrude is a wolf' or 'Greg is a swan' but not both.
valid_hypothesis: There is a better than even chance that either 'Gertrude is a wolf' or 'Greg is a swan' but not both.
invalid_hypothesis: It is highly unlikely that either 'Gertrude is a wolf' or 'Greg is a swan' 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.2::factA.
    0.1::factB.
    0.6::factC.
    %hop1
    0.02::factX:-xor(factC,factA).
    0.6::factY:-or(factA,factC).
    0.25::factZ:-xor(factA,factB).
  
    %hop2
    conclusion:-xor(factX,factC).
  
    query(conclusion).
    
hypothesis_assertion: Either 'Gertrude is a wolf' or 'Greg is a swan' but not both.