We usually measure computation by time â how many steps an algorithm takes. Circuit complexity uses a different ruler. It asks: if you had to build a function purely out of logic gates â AND, OR and NOT wired together â how many gates would you need, and how deep would the chain be?
Every Boolean function can be built this way. A circuit has size (the total number of gates) and depth (the length of the longest path from an input to the output). Size is roughly "how much hardware"; depth is roughly "how many sequential steps" â how parallel the computation can be.
These two numbers fight each other. The same function can often be built deep and narrow (few gates per layer, many layers) or shallow and wide (many gates working in parallel, fewer layers). Understanding exactly how big a circuit has to be â its lower bound â turns out to be one of the deepest open questions in all of computer science.
Comments
Loading comments...