Solution (source code)

= Solution

If coordinate $j$ is not an <essential variable of a function>, changing that coordinate alone never changes the output, for \i[any] values of the other coordinates. Take two inputs with the same $i$-th coordinate. Change their other coordinates one at a time to transform the first input into the second. Every such change is inessential, so all intermediate outputs are equal.

Define $f_i(t)=f(1,\ldots,1,t,1,\ldots,1)$, with $t$ in position $i$. The preceding argument gives \b[$f(x_1,\ldots,x_n)=f_i(x_i)$]. Since $i$ is essential, $f_i$ is nonconstant. The conclusion depends on the full “for every context” negation of essentiality, not merely on testing a coordinate at one selected input.