Digital Logic | Functionally complete operations

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.

  1. The set (AND, OR, NOT) is a functionally complete set.
  2. The set (AND, NOT) is said to be functionally complete.
  3. 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.



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

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.