Para futuras referencias, para las personas que no están familiarizadas con las funciones generadoras, aquí hay una solución utilizando el principio de exclusión de la inclusión.
Ignorar la restricción $a_i\le r_i$ el número de soluciones es $\binom{N+n-1}{n-1}$ por estrellas y barras. Para incorporar estas restricciones, restamos las soluciones "malas" en las que algunos $a_i>r_i$ . Para contar las soluciones en las que $a_1>r_1$ En cambio, contamos las soluciones de la ecuación $$ (a_1-r_1-1)+a_2+a_3+\dots+a_n=N-r_1-1 $$ Ahora, todos los sumandos del lado izquierdo son enteros no negativos, por lo que el número de soluciones es $\binom{N-r_1-1+n-1}{n-1}$ . Por lo tanto, restamos $\binom{N-r_i-1+n-1}{n-1}$ para cada $i=1,2,\dots,n$ .
Sin embargo, las soluciones con dos variables que eran demasiado grandes se han restado dos veces, por lo que hay que volver a sumarlas. Soluciones en las que $a_i>r_i$ y $a_j>r_j$ se puede contar restando $r_i+1$ de $a_i$ y $r_j+1$ de $a_j$ dejando una lista de enteros que suman $N-(r_i+1)-(r_j+1)$ cuyo número es $\binom{N-(r_i+1)-(r_j+1)+n-1}{n-1}$ .
A continuación, debemos corregir las soluciones con tres variables que son demasiado grandes, luego cuatro, y así sucesivamente. Esto puede tratarse sistemáticamente utilizando el principio de exclusión de la inclusión. El resultado es $$ \sum_{S\subseteq \{1,2,\dots,n\}}(-1)^{|S|}\binom{N+n-1-\sum_{i\in S}(r_i+1)}{n-1} $$ En este caso, definimos $\binom{m}k=0$ siempre que $m<0$ .
Para el caso especial $r_1=r_2=\dots=r_n=r$ donde el límite superior es el mismo para cada variable, el resultado es $$ \sum_{k=0}^{\lfloor N/(r+1) \rfloor}(-1)^k\binom{n}k\binom{N-k(r+1)+n-1}{n-1}. $$