Prerequisite – Functional Completeness

A switching function is expressed by binary variables, the logic operation symbols, and constants 0 and 1. When every switching function can be expressed by means of operations in it, then only a set of operation is said to be functionally complete.

- The set (AND, OR, NOT) is a functionally complete set.
- The set (AND, NOT) is said to be functionally complete.
- The set (OR, NOT) is also said to be functionally complete.

Here,

The set (AND, NOT) is said to be functionally complete as (OR) can be derived using ‘AND’ and ‘NOT’ operations.

**Example:**

(X + Y) = (X'.Y')' X'= compliment of X. Y'= compliment of Y.

The set (OR, NOT) is said to be functionally complete as (AND) can be derived using ‘OR’ and ‘NOT’ operations.

**Example:**

(X.Y) = (X' + Y')'

**Note:**

A function can be fully functionally complete, or partially functionally complete or, not at all functionally complete.

**Example-1:**

If a function,**f(X, Y, Z)= (X’ + YZ’)**then check whether its functionally complete or not?

Put Z = Y in the above function,

Therefore,

f(X, Y, Y)= (X' + YY') = (X' + 0) since, Y.Y'=0 = X' (It is compliment i.e., NOT)

Again, put X= X’ and Z= Y’ in the above function,

Therefore,f(X', Y, Y')= (X')'+ Y(Y')' = (X + Y.Y) since, (X')'= X and (Y')'= Y = (X + Y) since, Y.Y= Y (It is OR operator)

Thus, you are able to derive NOT and OR operators from the above function so this function is fully functionally complete.

**Example-2:**

If a function,**f(X, Y)= (X’Y)**then check whether it is functionally complete or not?

Put X= (X’),

Therefore,f(X', Y)= (X')'.Y = X.Y (It is AND operator)

Here, AND operator is derived now you need to derive NOT operator to make it functionally complete.

If you put Y= 1,Then f(X, 1)= (X'), It is NOT operator.

Thus, this function is partially functionally complete as you need (1) to derive NOT operator.

**Note:**Whenever you take the help of constants (1 and 0) to make a function functionally complete then that function is called partially complete function.**Example-3:**

If a function**f(X, Y, Z)= (XY + YZ + ZX)**then check whether this function is functionally complete or not?

In order to make a function functionally complete, deriving NOT operator is necessary but here, there is no compliment in the function so, it is not possible to derive NOT operator.Thus, this function is not at all functionally complete.

Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the **CS Theory Course** at a student-friendly price and become industry ready.