We've talked a lot about multipliers recently, and in the past, we've talked about floating point adders, multipliers, and reciprocal.
Another interesting function that might be good to implement is the logarithm. In fact, I think we may actually need that to do MIP-mapped textures. But there are more general applications. I've studied various problems in AI where numberous probabilities must be multiplied together, for instance in hidden markov models. (HMMs). To avoid having to multiply smaller and smaller numbers, people commonly switch to log space. Instead of multiplying small positive numbers, you add large negative numbers. Logs of probabilities are commonly referred to as "likelihoods" or "log likelihoods." I don't remember enough about the math to explain the advantage, but apparently, there is one. < and > retain the same relative meaning, and there's often no point in switching back to probability space, because often you just want to compare. Depending on what sorts of applications we want to implement besides graphics, we may need a library of things like this. For instance, we could so automatic speech recognition in hardware, which is typically implemented using HMMs. -- Timothy Normand Miller http://www.cse.ohio-state.edu/~millerti Open Graphics Project _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
