FUNCTION :  pntDP - Returns true if a partition into distinct parts
                

CALLING SEQUENCE :  pntDP(ptn)
                    

PARAMETERS :   ptn   -  partition (list of nonnegative integers)

SYNOPSIS :   
 pntDP(ptn) returns true if the partition ptn is a partition into
 distinct parts.   

EXAMPLES :   
> with(combinat):
> read %FUNCS.txt%:
> ptn1:=[1,3,6];
                               ptn1 := [1, 3, 6]
> ptnDP(ptn1);
                                      true
> ptn2:=[1,3,3,6];
                              ptn2 := [1, 3, 3, 6]
> ptnDP(ptn2);
                                     false
> ptns:=partition(9):
> ptns1:=select(ptnDP,ptns);
ptns1 := [[2, 3, 4], [1, 3, 5], [4, 5], [1, 2, 6], [3, 6], [2, 7], [1, 8], [9]]
> printptns(ptns1);
9
`8 + 1`
`7 + 2`
`6 + 3`
`6 + 2 + 1`
`5 + 4`
`5 + 3 + 1`
`4 + 3 + 2`
> quit

DISCUSSION :
 ptn1=[1,3,6] is a partition into distinct parts but ptn2=[1,3,3,6]
 is not. There are 8 partitions of 9 into distinct parts:
 9, 8 + 1, 7 + 2, 6 + 3, 6 + 2 + 1, 5 + 4, 5 + 3 + 1,
 and 4 + 3 + 2.

SEE ALSO :  ptnOP