NUM := proc(k :: integer) local i, j, n, Fun, Identity, v, A; n := 10; # <- DIMENSION Fun := (i, j)->piecewise(((j=i+1) or (i+j=n+1)), 1, 0); Identity := (i, j)->piecewise(i=j, 1, 0); v := matrix(1, n, 1); A := piecewise(k>1, (matrix(n, n, Fun))^(k-1), k=1, matrix(n, n, Identity)); return(evalm(v&*A&*transpose(v))[1, 1]); end: