1. A method of generating features optimal to a particular dataset and classifier, comprising: a. inputting a dataset of messages; b. inputting a classifier; c. encoding an algebra of features; d. selecting computable features capable of describing the dataset from the algebra of features; and e. selecting an optimal feature that is optimal for the classifier and the dataset.