In this course you will learn about the basic components of combinational and sequential logic circuits, and about techniques for designing circuits using these components. We will introduce various formal logic and arithmetic concepts such as Boolean algebra, number systems, and Karnaugh maps that will help you analyze circuits and optimize their design.