The main idea of eager encoding is that the input formula is translated into a propositional formula with all relevant theory-specific information encoded into the formula. Given a formula $\varphi$, algorithms based on eager encoding operate in three steps: \begin{enumerate} \item Replace any unique $\mathcal{T}$-atom in the original formula $\varphi$ with a fresh Boolean variable to get a Boolean formula $\hat{\varphi}$. \item Generate a Boolean formula $\varphi_{cons}$ that constrains the values of the introduced Boolean variables to preserve the information of the theory. \item Invoke a SAT solver on the Boolean formula $\varphi_{prop} \coloneqq \hat{\varphi} \wedge \varphi_{cons}$ that corresponds to an equisatisfiable propositional formula to $\varphi$. \end{enumerate}