A popular style of completion matching (popularized by Helm AFAIK) is out of order string matching. If you type strings separated by spaces (e.g. dog cat mouse) then these strings can occur in any order in the matching completions (e.g the dormouse used dogfood to tempt the tomcat) completion-styles-alist should support this kind of matching too.