       Re: compositions with the restricted set of integers

• To: mathgroup at smc.vnet.net
• Subject: [mg105177] Re: [mg105143] compositions with the restricted set of integers
• From: Leonid Shifrin <lshifr at gmail.com>
• Date: Mon, 23 Nov 2009 06:53:22 -0500 (EST)
• References: <200911221110.GAA10476@smc.vnet.net>

```Hi, Michael.

Your solution is indeed very memory -  hungry due to the mapping of
Permutations, as you mentioned. The total number of permutations can be
easily deduced from the list of multiplicities of elements in a given
partition: n!/(n1!n2!...nk!), where n1, ..., nk are multiplicities of
elements, and n is the length of the partition: n=n1+...+nk. The
multiplicities can be obtained by Tally. The following modification can be
realistically used in a much wider region of the problem's parameter space

In:=
Clear[outsNew];
outsNew[sum_, thr_] :=
Total[Factorial[Length[#]]/
Times @@ Factorial[Tally[#][[All, 2]]] & /@
Cases[IntegerPartitions[sum, thr, {1, 2, 3, 4, 5, 6}],
Table[_, {thr}]]];

For example:

In: =
outsNew[53, 25] // Timing

Out =

{0.05, 247679998965100}

Regards,
Leonid

On Sun, Nov 22, 2009 at 3:10 AM, michael partensky <partensky at gmail.com>wrote:

>  IntegerPartitions has a useful option restricting the values of
> partitions.
> For example, IntegerPartitions[6,2,{1,2,3,4,5,6}] . Does it exist for
> Compositions?
>
> What I am looking for is a substitute for  a lengthy and inefficient
> approach described below. We through n dice.  How many outcomes
> *outs*correspond to the face total equal
> *sum*?
> I am aware about the recursive approach, but prefer to describe it in terms
> of integer partitioning (or compositions).
> *Here is my intellectually insulting solution:*
>
> outs[sum_, thr_] :=
>  Length[Flatten[
>    Permutations /@
>     Cases[IntegerPartitions[sum, thr, {1, 2, 3, 4, 5, 6}],
>      Table[_, {thr}]], 1]];
>
> Mapping with  permutations seems especially silly.
> Is there a version of Compositions with the similar restrictive option ({1,
> 2, 3, 4, 5, 6})?
> I would appreciate any other suggestions as well.
>
> Thanks
> Michael
>
>
>

```

• Prev by Date: Re: shadow warning with function parameters and local module variables
• Next by Date: Re: A little C program calling MathLink
• Previous by thread: Re: compositions with the restricted set of integers
• Next by thread: Re: compositions with the restricted set of integers