Saturday, June 26, 2010

Why "uncertainty on top of logic" is bad

I have made this point before, but this is a better way to put it:

If we put "logic on top of uncertainty", then the uncertainty calculus operates underneath the logic and the logic cannot "see" its workings, ie, the uncertainty calculus is invisible from the logic's POV.  This is an advantage, as we can make queries about logic statements and the uncertainty calculus will work "behind the scene" -- we don't have to worry about it at the logical level.

Contrast this with "uncertainty on top of logic".  Now every statement in the KB is shrouded within a layer of uncertainty calculus.  We cannot query statements directly, because some nodes' TVs will be buried in probabilistic functions as their arguments.  Seeking the TV would involve finding the inverse of those probabilistic functions -- which can be extremely complicated for a logic to handle automatically, ie:
     given          X = f(A, B, C, D, ...)
     where          f  is the probability function
     solve for     A     in terms of X, B, C, D, ...


  1. YKY,

    Can you spell out why we want to find the inverse here, perhaps with an example?

  2. It seems to me that the biggest problem is allowing for approximate reasoning to be integrated into the system. Inferences are only alLowed if they are exactly right, so although one could reason about approximations, one couldn't reason using them. This seems fatal.