RosettaCodeData/Task/Pascal-matrix-generation/Maxima/pascal-matrix-generation.ma...

14 lines
486 B
Plaintext

/* Function that returns a lower Pascal matrix */
lower_pascal(n):=genmatrix(lambda([i,j],binomial(i-1,j-1)),n,n)$
/* Function that returns an upper Pascal matrix */
upper_pascal(n):=genmatrix(lambda([i,j],binomial(j-1,i-1)),n,n)$
/* Function that returns a symmetric Pascal matrix (the matricial multiplication of a lower and an upper of the same size) */
symmetric_pascal(n):=lower_pascal(n).upper_pascal(n)$
/* Test cases */
lower_pascal(5);
upper_pascal(5);
symmetric_pascal(5);