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 DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready.

## Recommended Posts:

- Proof that vertex cover is NP complete
- Operations on Processes
- Different Operations on Matrices
- Dual Mode operations in OS
- Mathematics | Set Operations (Set theory)
- Basic Laws for Various Arithmetic Operations
- Arithmetic Operations of Binary Numbers
- Read and Write operations in Memory
- Set Theory Operations in Relational Algebra
- Arithmetic Operations of Octal Numbers
- Arithmetic Operations of Hexadecimal Numbers
- Arithmetic Micro-operations in Registers
- Complexity of different operations in Binary tree, Binary Search Tree and AVL tree
- SMTP Responses

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.