You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

39 lines
2.1 KiB

We start by translating $\varphi$ to $\hat{\varphi} = \skel$ and assign the following variables to the theory literals:
\begin{itemize}
\item $e_{0}\Leftrightarrow(a=b)$
\item $e_{1}\Leftrightarrow(a=f(a))$
\item $e_{2}\Leftrightarrow(f(a)=b)$
\item $e_{3}\Leftrightarrow(c=b)$
\item $e_{4}\Leftrightarrow(f(a)=c)$
\item $e_{5}\Leftrightarrow(f(b)=c)$
\end{itemize}
$\hat{\varphi} = (\clause{e_{0}; e_{1}}) \land (\clause{e_{2}; e_{3}; e_{4}}) \land (\clause{e_{5}; \lnot e_{2}; \lnot e_{4}}) \land (\clause{\lnot e_{0}; \lnot e_{1}}) \land (\clause{e_{1}; \lnot e_{3}}) $
\hspace{-0.09cm}\scalebox{0.85}{
\begin{dplltabular}{6}
\dpllStep{1|2|3|4|5|6}
\dpllDecL{0|0|0|0|1|1}
\dpllAssi{ - |$e_{5}$|$e_{5}, e_{2}$|$e_{5}, e_{2}, \lnot e_{3}$|\makecell{$e_{5}, e_{2}, \lnot e_{3}, $ \\ $\lnot e_{0}$}|\makecell{$e_{5}, e_{2}, \lnot e_{3}, $ \\ $\lnot e_{0}, e_{1}$}}
\dpllClause{1}{$e_{0}, e_{1}$}{$e_{0}, e_{1}$|$e_{0}, e_{1}$|$e_{0}, e_{1}$|$e_{0}, e_{1}$|$e_{1}$|\done}
\dpllClause{2}{$e_{2}, e_{3}, e_{4}$}{$e_{2}, e_{3}, e_{4}$|$e_{2}, e_{3}, e_{4}$|\done|\done|\done|\done}
\dpllClause{3}{$e_{5}, \lnot e_{2}, \lnot e_{4}$}{$e_{5}, \lnot e_{2}, \lnot e_{4}$|\done|\done|\done|\done|\done}
\dpllClause{4}{$\lnot e_{0}, \lnot e_{1}$}{$\lnot e_{0}, \lnot e_{1}$|$\lnot e_{0}, \lnot e_{1}$|$\lnot e_{0}, \lnot e_{1}$|$\lnot e_{0}, \lnot e_{1}$|\done|\done}
\dpllClause{5}{$e_{1}, \lnot e_{3}$}{$e_{1}, \lnot e_{3}$|$e_{1}, \lnot e_{3}$|$e_{1}, \lnot e_{3}$|\done|\done|\done}
\dpllBCP{ - | - | - | - |$e_{1}$| - }
\dpllPL{$e_{5}$|$e_{2}$|$\lnot e_{3}$| - | - | - }
\dpllDeci{ - | - | - |$\lnot e_{0}$| - | - }
\end{dplltabular}
}
$\Model_{\EUF} := (a \neq b) \land (a = f(a)) \land (f(a) = b) \land (c \neq b) \land (f(b) = c) $ \\
Check if the assignment is consistent with the theory:
\begin{align*}
&\{a, f(a)\}, \{f(a), b\}, \{f(b), c\}\\
&\{f(b), c\}, \{a, b, f(a)\}
\end{align*}
$\Model_{\EUF}$ is not consistent with the theory, because of: $(a \neq b) $\\
$\Rightarrow$ We need to add a blocking clause from $\Model_{\EUF}: \\ $
$BC :=\neg e_{5} \lor \neg e_{2} \lor e_{3} \lor e_{0} \lor \neg e_{1}$\\