How does this fit in with the definition of finite boolean functions?

60 Views Asked by At

My lecture defined that a boolean function is a function f: ${\{0,1\}}^{V} → \{0,1\}$ with $V$ being the set of variables. Moreover a boolean function f: ${\{0,1\}}^{V} → \{0,1\}$ is finite if set of "relevant" variables is finite. A variable is relevant in f if there are two interpretations $I_1,I_2: V → \{0,1\}$ such that $I_1(x) ≠ I_2(x)$ and $f(I_1) ≠ f(I_2)$.

This definition is new to me, as previous lectures defined finite boolean functions as functions: f: ${\{0,1\}}^{n} → \{0,1\}$. Can someone please explain (proof?) how my the second definition derives from the first definition?

1

There are 1 best solutions below

5
On BEST ANSWER

Anything that is a finite boolean function under the second definition is also a finite boolean under the first definition. But the first definition is more general. It includes some functions that are not finite boolean functions under the first definition.

When $V$ is finite then we know $|V|=n$ for some number $n$. Since the $n$ in $\{0,1\}^n$ just means “some set of size $n$”, the formulas $\{0, 1\}^n$ and $\{0, 1\}^V$ mean exactly the same thing when $V$ is finite.

The difference arises when $V$ is an infinite set. The $\{0,1\}^n$ formula doesn't consider this case. Let's say that $V$ is the infinite set $$V =\{v_1, v_2,v_3\ldots, v_{10934}, \ldots \}.$$

Now let's consider the function $f : V\to \{0, 1\}$ which is:

$$ f(v_1, v_2, v_3, \ldots) = \begin{cases} 1,\text{ if both $v_1$ and $v_2$ are $1$} \\ 0,\text{ otherwise} \end{cases} $$

$f$ here is a function of an infinite number of variables, but according to the definition, only $v_1$ and $v_2$ matter to the output of the function. $f$ is really behaving just like the very simple function $$f = v_1\land v_2,$$ except it has an infinite family of inputs that never affect its value. You can imagine $f$ as a circuit with an infinite number of input wires. The first two wires are connected to an and-gate, and all the other wires are connected to nothing.

boolean circuit as described above

We may as well ignore the inputs that are not connected (they are “irrelevant”) and just say that $f$ is also a finite boolean function that has two relevant inputs.

Some functions on an infinite set of variables are not finite boolean functions under this definition. For example:

$$ f(v_1, v_2, v_3, \ldots) = \begin{cases} 1,\text{ if exactly three of the $v_i$ are $1$} \\ 0,\text{ otherwise} \end{cases} $$

This function has an infinite number of inputs, and they are all relevant, so it's not a finite boolean function under either definition.