A “symmetric Boolean function”

boolean-algebralogic

Below are two different definitions of a "symmetric boolean function".

Question: Are these equivalent and how?

Definition 1:

The $k$th elementary symmetric function of $n$ variables is the sum of all possible products of $k$ distinct variables = $\Sigma x_{i_1} \cdot \cdot \cdot x_{i_k}$ where the subscripts are taken from the first $n$ integers. (Cunkle, p. 834)

Definition 2:

A symmetric Boolean function is a Boolean function whose value does not depend on the permutation of its input bits, i.e., it depends only on the number of ones in the input. (wikipedia)

References:

Cunkle, C. (1963). Symmetric Boolean Functions. The American Mathematical Monthly, 70(8), 833-836. doi:10.2307/2312663

Best Answer

The first definition does not specify the domain of the $x_i$ as booleans. It uses sums and products so it makes sense for the domain of each of the $x_i$ to be anything (call it $R$) where you can add and multiply and the value outputted is in that same domain. That is like the real numbers or the complex numbers. So the first definition takes $n$ inputs from $R$ and outputs something in $R$. If you permute the inputs you can see the summands just get shuffled around but the result is the same. That is why it is called symmetric.

But the second definition says instead of $R$ the inputs and outputs are all boolean.

Now consider the case when $R$ is booleans where sum means the xor operation and multiplication is the and operation. Then you can use the first definition to get a symmetric Boolean function of the second definition.

Edit : Clarification on last paragraph for the comment Restricting 1st definition to booleans gives examples of the second definition. Did not mean to imply that it gave the full second definition. Get a symmetric Boolean function of the second definition, not all of them.

Related Question