I don't have answers for everything you asked, but here's a bit of info...
1. "Fuzzy" search can help correct poor spelling. For example, you'll get the same search results for "monitor" and "moniter" - stemming takes care of "monitors"
2. Stemming is designed to address singular/plural, though the algorithm may include other mappings. I'll let somebody else chime in if they know.
3. There is a standard, simple Soundex algorithm (you can see it on Wikipedia: http://en.wikipedia.org/wiki/Soundex) - I'm not sure whether the Soundex implementation in Ariba is a 3rd party library or a standalone implementation done by our engineering team (maybe they can chime in?), but it's part of the standard Ariba distribution one way or another. It can be turned on or off through a parameter.
Hope that helps a bit.
Thank you Tim - it was very useful information.