Suma de producto de subconjuntos

¿Hay un nombre para esta operación? Y: ¿hay una expresión de forma cerrada?

Para un conjunto dado de n elementos, y el valor k entre 1 y n,Tomar todos los subconjuntos (combinaciones) de elementos kEncuentra el producto de cada subconjunto.Encuentra la suma de todos esos productos.

Puedo expresar esto en Python, y hacer el cálculo con bastante facilidad:

<code>from operator import mul
from itertools import combinations
from functools import reduce
def sum_of_product_of_subsets(list1, k):
    val = 0
    for subset in combinations(list1, k):
        val += reduce(mul, subset)
    return val
</code>

Solo estoy buscando la expresión de forma cerrada, para evitar el bucle en caso de que el tamaño del conjunto sea grande.

Tenga en cuenta que esto NO es lo mismo que esta pregunta:Suma del producto sobre todas las combinaciones con un elemento de cada grupo. - Esa pregunta es sobre la suma de productos de un producto cartesiano. Estoy buscando la suma de productos del conjunto de combinaciones de tamaño k; No creo que sean lo mismo.

Para ser claros, para set (a, b, c, d), entonces:

<code>k = 4 --> a*b*c*d
k = 3 --> b*c*d + a*c*d + a*b*d + a*b*c
k = 2 --> a*b + a*c + a*d + b*c + b*d + c*d
k = 1 --> a + b + c + d
</code>

Sólo buscaba la expresión; No hay necesidad de suministrar el código Python específicamente. (Cualquier lenguaje sería ilustrativo, si desea proporcionar una implementación de ejemplo).

Respuestas a la pregunta(2)

Su respuesta a la pregunta