Combinaciones con repetición

Estoy usando Mathematica 7 y con una función de paquete combinatorio puedo obtener todas las combinaciones de un cierto número de una lista de elementos donde el orden no importa y no hay repetición.

in: KSubsets[{a, b, c, d}, 3]
out: {{a, b, c}, {a, b, d}, {a, c, d}, {b, c, d}}

No puedo encontrar una función que me dé todas las combinaciones de un cierto número de una lista de elementos donde el orden no importa y allíes repetición. es decir, el ejemplo anterior incluiría elementos como {a, a, b}, {a, a, a}, {b, b, b} ... etc. en la salida.

Puede requerir una función personalizada. Si puedo encontrar una, publicaré una respuesta, pero por ahora no veo una solución obvia.

Editar: idealmente, la salida no contendrá la duplicación de una combinación, p. Las tuplas [{a, b, c, d}, 3] devolverán una lista que contiene dos elementos como {a, a, b} y {b, a, a} que desde el punto de vista de las combinaciones son iguales.

Respuestas a la pregunta(4)

Su respuesta a la pregunta