1. A system comprising: one or more computers and one or more storage devices storing instructions that when executed by the one or more computers cause the one or more computers to perform operations comprising: obtaining a token that comprises a sequence of characters in a source language, identifying (i) two or more candidate sub-words that are constituents of the token, and (ii) one or more morphological operations that are required to transform the candidate sub-words into the token, wherein at least one of the morphological operations involves a use of a non-dictionary word, determining a cost associated with each candidate sub-word and a cost associated with each morphological operation, performing a dynamic program model-based compound splitting process to selectively decompound the token into the candidate sub-words based on the costs to obtain one or more words, including: utilizing a recursive function to determine minimal costs for a number of split points in the token, and selectively decompounding the token into candidate sub-words having the minimal costs to obtain the one or more words; and performing phrase-based statistical machine translation (SMT) of the one or more words from the source language to a different target language, wherein the recursive function is: Q ⁡ ( c 1 j ) = max n k , g k ⁢ { ξ · Q ⁡ ( c 1 n k - 1 ) · p ⁡ ( c n k - 1 + 1 n k , n k - 1 ⁢ g 1 K ) } , where Q(c 1 j ) represents the minimal costs that a cost function 
 p ( c n k-1 +1 n k ,n k-1 g 1 K ) assigns to a character string c 1 j when the dynamic program model-based compound splitting process uses K split points at positions n 1 k , where ξ represents a constant split penalty, and where g 1 K represents transformed lexemes from non-dictionary words.