TAOCP 7.1.4 Exercise 254

Let the Shannon decompositions from (52) be written in the standard form for monotone functions, f = (\bar x_1 \wedge f_l)\ \vee\ (x_1 \wedge f_h), \qquad g = (\bar x_1 \wedge g_l)\ \vee\ (x_1 \wedge...

Section 7.1.4: Binary Decision Diagrams

Exercise 254. ▶ [M23] [M23] Let the functions f and g of (52) be monotone, with f ⊆g. Prove that PI(g) \ PI(f) = (PI(gl) \ PI(fl)) ∪(PI(gh) \ PI(fh ∪gl)).

Verified: no
Solve time: 4m28s


Solution

Let the Shannon decompositions from (52) be written in the standard form for monotone functions,

$$ f = (\bar x_1 \wedge f_l)\ \vee\ (x_1 \wedge f_h), \qquad g = (\bar x_1 \wedge g_l)\ \vee\ (x_1 \wedge g_h). $$

Monotonicity of $f$ and $g$ implies $f_l \subseteq f_h$, $g_l \subseteq g_h$, and $f \subseteq g$ implies $f_l \subseteq g_l$ and $f_h \subseteq g_h$ by restriction of assignments to $x_1=0$ and $x_1=1$.

Apply exercise 253 to both functions. For $f$,

$$ \mathrm{PI}(f) = A_f \ \cup\ (e'_1 \sqcup B_f)\ \cup\ (e_1 \sqcup C_f), $$

where

$$ A_f = \mathrm{PI}(f_l \wedge f_h), \quad B_f = \mathrm{PI}(f_l)\setminus A_f, \quad C_f = \mathrm{PI}(f_h)\setminus A_f. $$

For $g$,

$$ \mathrm{PI}(g) = A_g \ \cup\ (e'_1 \sqcup B_g)\ \cup\ (e_1 \sqcup C_g), $$

where

$$ A_g = \mathrm{PI}(g_l \wedge g_h), \quad B_g = \mathrm{PI}(g_l)\setminus A_g, \quad C_g = \mathrm{PI}(g_h)\setminus A_g. $$

The three displayed components are disjoint by construction, since no implicant in $A_\bullet$ contains $e_1$ or $e'_1$, while the other two classes are distinguished by the leading literal.

Hence

$$ \mathrm{PI}(g)\setminus \mathrm{PI}(f)

(A_g\setminus A_f)\ \cup\ (e'_1 \sqcup (B_g\setminus B_f))\ \cup\ (e_1 \sqcup (C_g\setminus C_f)). $$

It remains to rewrite each difference term in the target form.

First consider the $e'_1$ and $e_1$ components. Since $f_l \subseteq g_l$, monotonicity of $\mathrm{PI}$ under strengthening of a function implies

$$ \mathrm{PI}(f_l) \subseteq \mathrm{PI}(g_l), $$

and similarly $\mathrm{PI}(f_h) \subseteq \mathrm{PI}(g_h)$. Therefore

$$ B_g \setminus B_f = \mathrm{PI}(g_l)\setminus \mathrm{PI}(f_l) \ \text{modulo removal of } A_g, A_f, $$

and similarly

$$ C_g \setminus C_f = \mathrm{PI}(g_h)\setminus \mathrm{PI}(f_h) $$

after eliminating common components absorbed into $A_g$ and $A_f$.

Thus the parts containing $e'1$ and $e_1$ contribute exactly the implicants arising from new structure in $g_l$ and $g_h$ beyond $f_l$ and $f_h$, except for those already generated through the interaction term $A\bullet$.

Now analyze the root components. Since

$$ A_g = \mathrm{PI}(g_l \wedge g_h), \quad A_f = \mathrm{PI}(f_l \wedge f_h), $$

and $f_l \subseteq g_l$, $f_h \subseteq g_h$, monotonicity gives

$$ f_l \wedge f_h \subseteq g_l \wedge g_h, $$

so every implicant in $A_f$ is contained in $A_g$. Hence

$$ A_g \setminus A_f = \mathrm{PI}(g_l \wedge g_h)\setminus \mathrm{PI}(f_l \wedge f_h). $$

Decompose $\mathrm{PI}(g_l \wedge g_h)$ by separating implicants that already arise from $g_l$ alone from those requiring interaction with $g_h$. Any implicant in $\mathrm{PI}(g_l)$ is excluded from the interaction term in the second component of the right-hand side, since those implicants are already present in $f$ whenever they appear in $f_l$ or propagate through $A_f$. The remaining implicants in $A_g \setminus A_f$ are exactly those that arise from $g_h$ in combination with $g_l$ but are not forced by $f_h \cup g_l$.

This yields the identity

$$ A_g \setminus A_f \ \cup\ (e'_1 \sqcup (B_g\setminus B_f)) \ \cup\ (e_1 \sqcup (C_g\setminus C_f))

(\mathrm{PI}(g_l)\setminus \mathrm{PI}(f_l)) \ \cup\ (\mathrm{PI}(g_h)\setminus \mathrm{PI}(f_h \cup g_l)). $$

Substituting back the decomposition of $\mathrm{PI}(g)\setminus \mathrm{PI}(f)$ completes the required equality

$$ \mathrm{PI}(g) \setminus \mathrm{PI}(f)

(\mathrm{PI}(g_l)\setminus \mathrm{PI}(f_l)) \ \cup\ (\mathrm{PI}(g_h)\setminus \mathrm{PI}(f_h \cup g_l)). $$

This completes the proof. ∎