Ch 6. Boolean Algebra and Combinatorial Circuits
Ch 6. Practice
6.1 Combinatorial Circuits
Basic Skills
- A circuit has two inputs, [latex]A[/latex] and [latex]B[/latex], and produces an output of 1 only when both [latex]A[/latex] and [latex]B[/latex] are [latex]1[/latex]. What type of logic gate is this?
- Construct the truth table for a circuit with two inputs, [latex]A[/latex] and [latex]B[/latex], and an output defined by the expression [latex]A + B[/latex].
- Given a circuit with inputs [latex]A = 0[/latex] and [latex]B = 1[/latex], and the output is defined by [latex]A \cdot B[/latex], what is the output?
- What is the output of a NOT gate if the input is 0? What is the output if the input is 1?
- A circuit has three inputs: [latex]A[/latex], [latex]B[/latex], and [latex]C[/latex]. The output is defined by the expression [latex](A \cdot B) + C[/latex]. Evaluate the output when [latex]A = 1[/latex], [latex]B = 0[/latex], and [latex]C = 1[/latex].
Applications
- A smart home lighting system turns on the lights if either the motion sensor detects movement or the light sensor detects darkness. Let [latex]M[/latex]: “Motion is detected” and [latex]D[/latex]: “Darkness is detected.” Write the logic expression for the system and construct the truth table.
- An access control panel grants entry only if both a valid keycard is scanned and the correct PIN is entered. Let [latex]K[/latex]: “Keycard is valid” and [latex]P[/latex]: “PIN is correct.” Write the logic expression and determine the output when [latex]K = 1[/latex] and [latex]P = 0[/latex].
- An alarm system is triggered if the door is open and the security system is armed. Let [latex]D[/latex]: “Door is open” and [latex]S[/latex]: “System is armed.” Write the logic expression and evaluate the output when [latex]D = 1[/latex] and [latex]S = 1[/latex].
- An automated fan turns on if the temperature is high or the humidity is high. Let [latex]T[/latex]: “Temperature is high” and [latex]H[/latex]: “Humidity is high.” Write the logic expression and determine the output when [latex]T = 0[/latex] and [latex]H = 1[/latex].
- A data backup is initiated only if the system is idle and the backup schedule is active. Let [latex]I[/latex]: “System is idle” and [latex]B[/latex]: “Backup schedule is active.” Write the logic expression and evaluate the output when [latex]I = 1[/latex] and [latex]B = 0[/latex].
Challenge Problems
- Design a combinatorial circuit that outputs 1 if at least two out of three inputs ([latex]A[/latex], [latex]B[/latex], [latex]C[/latex]) are 1. Write the Boolean expression and construct the truth table.
- Given the Boolean expression [latex]A \cdot (B + C) + A \cdot B[/latex], simplify the expression using Boolean algebra laws and describe the resulting circuit.
- A system triggers a fault alert if either sensor [latex]A[/latex] or sensor [latex]B[/latex] detects an error, but not both at the same time. Write the Boolean expression and construct the truth table.
- A circuit is defined by the expression [latex](A \cdot B) + (A \cdot B) \cdot C[/latex]. Simplify the expression and explain how the simplified version reduces gate usage.
- Consider a circuit with inputs [latex]A[/latex], [latex]B[/latex], and [latex]C[/latex], and output defined by [latex]((A + B) \cdot C) + (A \cdot B)[/latex]. Evaluate the output for all combinations of [latex]A[/latex], [latex]B[/latex], and [latex]C[/latex], and identify which combinations produce an output of 1.
6.2 Boolean Algebras
Basic Skills
- List the three fundamental operations in Boolean algebra and describe their symbolic representations.
- Evaluate the Boolean expression [latex]A + (A \cdot B)[/latex] for the input values [latex]A = 0[/latex] and [latex]B = 1[/latex].
- Simplify the expression [latex]A + 0[/latex] and state which law(s) you used.
- Simplify the expression [latex]A \cdot \bar{A}[/latex] and state which law(s) you used.
- Simplify the expression [latex]A \cdot (B + C)[/latex] and state which law(s) you used.
Applications
- A digital lock opens only if the correct code is entered and the override switch is not active. Let [latex]C[/latex]: “Correct code entered” and [latex]O[/latex]: “Override switch is active.” Write the Boolean expression for the lock mechanism and evaluate it when [latex]C = 1[/latex] and [latex]O = 0[/latex].
- An email is marked as spam if it contains suspicious keywords or is from an unverified sender. Let [latex]K[/latex]: “Contains suspicious keywords” and [latex]U[/latex]: “Sender is unverified.” Write the Boolean expression and construct the truth table.
- A server maintenance alert is triggered if the server is offline or the temperature exceeds safe limits. Let [latex]S[/latex]: “Server is online” and [latex]T[/latex]: “Temperature is safe.” Write the Boolean expression using complements and evaluate the output when [latex]S = 0[/latex] and [latex]T = 1[/latex].
- Access to a secure folder is granted only if the user is authenticated and not flagged as suspicious. Let [latex]A[/latex]: “User is authenticated” and [latex]F[/latex]: “User is flagged.” Write the Boolean expression and determine the output when [latex]A = 1[/latex] and [latex]F = 0[/latex].
- A backup power system activates if the main power fails or the battery level is critically low. Let [latex]P[/latex]: “Main power is active” and [latex]B[/latex]: “Battery level is sufficient.” Write the Boolean expression using complements and evaluate the output when [latex]P = 0[/latex] and [latex]B = 1[/latex].
Challenge Problems
- Simplify the Boolean expression [latex](A + B) \cdot (A + \bar{B})[/latex] using Boolean algebra laws. Show each step and identify which laws are applied.
- Prove the Boolean identity [latex]A + (A \cdot B) = A[/latex] using a truth table and Boolean algebra laws.
- Design a Boolean expression that outputs 1 only when exactly one of the inputs [latex]A[/latex], [latex]B[/latex], or [latex]C[/latex] is 1. Construct the truth table and simplify the expression.
- Simplify the expression [latex]\bar{A \cdot B + C}[/latex] and state which law(s) you used. Then construct the truth table for both the original and simplified expressions to verify equivalence.
- Prove the distributive law of Boolean algebra [latex]A \cdot (B + C) = (A \cdot B) + (A \cdot C)[/latex] using both a truth table and algebraic reasoning.
6.3 Boolean Functions and Synthesis of Circuits
Basic Skills
- Write a Boolean function [latex]F(A, B)[/latex] that outputs 1 only when both inputs [latex]A[/latex] and [latex]B[/latex] are 1.
- Construct the truth table for the Boolean function [latex]F(A, B, C) = (A \cdot B) + C[/latex]
- Evaluate the Boolean function [latex]F(A, B) = A + \bar{B}[/latex] for the input values [latex]A = 0[/latex] and [latex]B = 1[/latex].
- Given the Boolean function [latex]F(A, B) = A \oplus B[/latex] (exclusive OR), what is the output when [latex]A = 1[/latex] and [latex]B = 1[/latex]?
- Simplify the Boolean expression [latex]F(A, B) = A \cdot (A + B)[/latex] using Boolean algebra laws.
Applications
- A security system activates an alarm if motion is detected and the system is armed, or if a window sensor is triggered. Let [latex]M[/latex]: “Motion detected,” [latex]A[/latex]: “System armed,” and [latex]W[/latex]: “Window sensor triggered.” Write the Boolean function and construct the truth table.
- A login system grants access if the username is correct and either the password is correct or a biometric scan is successful. Let [latex]U[/latex]: “Username correct,” [latex]P[/latex]: “Password correct,” and [latex]B[/latex]: “Biometric scan successful.” Write the Boolean function and evaluate it for [latex]U = 1[/latex], [latex]P = 0[/latex], [latex]B = 1[/latex].
- An irrigation system activates if the soil is dry and it is not raining, or if the manual override is enabled. Let [latex]D[/latex]: “Soil is dry,” [latex]R[/latex]: “It is raining,” and [latex]O[/latex]: “Manual override enabled.” Write the Boolean function and determine the output when [latex]D = 1[/latex], [latex]R = 1[/latex], [latex]O = 0[/latex].
- A data packet is sent if the network is available and the buffer is not full. Let [latex]N[/latex]: “Network available” and [latex]B[/latex]: “Buffer full.” Write the Boolean function and evaluate it when [latex]N = 1[/latex] and [latex]B = 0[/latex].
- Design a Boolean function that outputs 1 only when inputs [latex]A[/latex] and [latex]B[/latex] are different. Construct the truth table and write the simplified Boolean expression.
Challenge Problems
- Simplify the Boolean function [latex]F(A, B, C) = A \cdot B + A \cdot C + B \cdot C[/latex] using Boolean algebra laws. Show each step and explain how the simplification reduces the number of gates in a circuit.
- Design a Boolean function [latex]F(A, B, C)[/latex] that outputs 1 if at least two of the three inputs are 1. Write the truth table and derive a simplified Boolean expression.
- Construct a Boolean function for exclusive OR using only AND, OR, and NOT gates. Write the expression and explain how it behaves for all input combinations.
- Given the Boolean function [latex]F(A, B, C) = (A \cdot \bar{B}) + (B \cdot C)[/latex], draw the logic gate structure and explain how the circuit processes inputs to produce the output.
- A system has three status flags: [latex]A[/latex], [latex]B[/latex], and [latex]C[/latex]. The system is in an invalid state if all three flags are the same (either all 0 or all 1). Design a Boolean function that outputs 1 when the system is in an invalid state. Construct the truth table and simplify the expression.