I knew that I would be dealing with the generation of incorrect lexical items, but I'm starting to realize that there may be an unwieldy number of them being generated. Instead of initially creating as many new items as possible and filtering later, it is looking like a better idea to be selective from the beginning and only translate words that fit some criteria. Such a criterion could be the necessity for a parse (which makes the system look more like on-line DLA), those with the highest confidence in the translation, or those with the lowest resulting ambiguity (which may or may not be the same as maximizing confidence).
For example, let's take the Japanese noun 犬 (inu, "dog"). If I consider all translations of the word using my translation dictionary, we get 'cane', 'bracco', 'cagna', 'chiocciola', 'cintura', 'cintola', 'pedinare', 'carretto', 'agguatare', 'chiocciolina', 'chiocciola,', 'troia', 'stronza', 'latte', 'nove', 'cucciolo', 'cento', 'tigre', 'segugio', 'perseguitare', 'inseguire', 'cane da caccia', 'braccare', 'voi', 'fox cub', 'etc', 'cagnolino', 'bear cub', 'bastardo', 'albero'. That's 30 translations, and obviously not all of them are even Italian, let alone correct translations. Then there's things like "perseguitare" which comes (translates) from the English verb "dog", meaning "to harass" or "to bother". While it's a valid translation from English, the Japanese 犬 does not have this reading, so we would be unable to guess that it's a verb. This does, however, show the potential for using multiple source languages in this task, but that's a discussion for another day.
Now let's look at the type translations. 'ordinary-n-lex' in Jacy maps to 'basic-noun-lex', which in Ita projects to: 'sg-male-common-noun-lex', 'sg-male-proper-noun-lex', 'sg-male-city-noun-lex', 'sg-male-opt-spr-common-noun-lex', 'pl-female-proper-noun-lex', 'pl-male-proper-noun-lex', 'sg-female-proper-noun-lex', 'sg-male-proper-noun-lex', 'sg-male-opt-spr-common-noun-lex', 'sg-male-common-noun-lex', 'sg-female-common-noun-lex', 'pl-male-common-noun-lex', 'pl-female-common-noun-lex', 'prep-pronoun-lex', 'nom-pronoun-lex', 'pl-male-proper-noun-lex', 'pl-male-common-noun-lex', 'pl-male-city-noun-lex', 'pl-female-proper-noun-lex', 'pl-female-city-noun-lex', 'pl-female-common-noun-lex', 'sg-female-city-noun-lex', 'pl-female-city-noun-lex', 'sg-male-city-noun-lex', 'pl-male-city-noun-lex', 'sg-female-city-noun-lex', 'sg-female-proper-noun-lex', 'sg-female-common-noun-lex'. 28 types.
If we project all translations to all possible types, we will have 30 * 28 = 840 new lexical items, and it's very unlikely that all of those are correct (it will probably be a very small set, like 1 or 2). This is just for 1 word! If there were 840 new items for every word we translate (which is probably more than usual), and if we have 7185 Japanese words that translate to Italian, then we could get up to 6,035,400 new lexical items.
Looking at a more conservative estimate, let's say we only use 1-hop translations (for explanation, see the Turing Center's page on Panlingual lexical translation). Then we only have 3511 Japanese words that translate to Italian, and there is usually only 1 translation. Let's also bring down the average type mappings to about 10. Then we will have 3511 * 1 * 10 = 35110 new lexical items. This is more manageable, but it's still about 10x more than we'd like.