# All possible combinations of x letters (what is this called in mathematics)

Firstly, thank you for looking at my question.

I would like to know what this kind of problem is called in mathematics:

Given a set of letters, find all possible 'words' you can make with those letters. For example for 'abc' the solution would be:

a, b, c, ab, ac, abc, ba, bac, bca, ca, cab, cba

Some background, I am writing a computer program to play Scrabble and need to generate all possible words given from a set of letters. I'm researching algorithms for this problem but couldn't quite figure out what the general name is for this type of problem. I'm curious to find out so I thought I would ask.

I thought this was a type of permutation problem but reading up on Permutations I see that the length of the result is set, not variable. And it's not a Combination since the order matters.

-
Where are bc, cb, and acb? Did you leave those out on purpose or by mistake? –  MJD Oct 21 '12 at 2:04
(Supposing that it was by accidents, what you want is called "all the permutations of a subset of a multiset of letters. The "multiset" might be important, since for Scrabble you might have more than one of a certain letter. –  MJD Oct 21 '12 at 2:05
It is permutations because like you said -- order matters. If you apply the permutation formula you will get a number of permutations not a set and certainly not a variable. –  glebovg Oct 21 '12 at 2:10
Since you are interested in actual words you need something else. You need some kind of an algorithm that distinguished between words and meaningless strings of letters. –  glebovg Oct 21 '12 at 2:12
Obviously we would just compare his possible words against some word list. –  asmeurer Oct 21 '12 at 2:13