The task of generation algorithms is not to reduce each word to its correct stem; the goal is to reduce words that look like a general form. The goal, as a rule, is not to get a word that can be presented to the user: even if "balling" and "ball" will produce "kjebnkkekaa", the algorithm is correct, because it still sees "balling" and "ball", as usual regarding the same.
Also be careful that the downward movement algorithm is absolutely not perfect; for more information, find the Porter-Stemming algorithm
source share