  Detecting and eliminating logic hazards in Boolean circuits is a fundamental
problem in logic circuit design. We show that there is no $O(3^{(1-\epsilon)n}
\text{poly}(s))$ time algorithm, for any $\epsilon > 0$, that detects logic
hazards in Boolean circuits of size $s$ on $n$ variables under the assumption
that the strong exponential time hypothesis is true. This lower bound holds
even when the input circuits are restricted to be formulas of depth four. We
also present a polynomial time algorithm for detecting $1$-hazards in DNF (or,
$0$-hazards in CNF) formulas. Since $0$-hazards in DNF (or, $1$-hazards in CNF)
formulas are easy to eliminate, this algorithm can be used to detect whether a
given DNF or CNF formula has a hazard in practice.
