diff --git a/spec/changelog.tex b/spec/changelog.tex index d5b94898c35cff05348b066132177dddfef8ba87..555bca4d1a2c026bab6a5af15078d8e55b7c7a5a 100644 --- a/spec/changelog.tex +++ b/spec/changelog.tex @@ -13,6 +13,8 @@ Proof rules: and tedious use of \proofRule{subproof} for each direction of the equivalence. \item Addition of the rule \proofRule{weakening} to express weakening of a clause. + \item Addition of the \proofRule{reordering} rule to represent reordering of + the literals in a clause. \end{itemize} \noindent diff --git a/spec/rule_list.tex b/spec/rule_list.tex index 26b3b8499ef1ff51778e2d37a90bcd8a3798f209..02a513877c3449bf135332ce642942af80a8e98a 100644 --- a/spec/rule_list.tex +++ b/spec/rule_list.tex @@ -256,6 +256,7 @@ simplifications.} \ruleref{la_mult_neg} & Multiplication with a negative factor.\\ \ruleref{symm} & Symmetry of equality. \\ \ruleref{not_symm} & Symmetry of not-equal.\\ +\ruleref{reordering} & Reording of the literals in a clause.\\ \end{xltabular} \begin{xltabular}{\linewidth}{l X} @@ -854,6 +855,16 @@ $j$. & \ctxsep & $\varphi_1, \cdots, \varphi_n, \psi_1, \dots, \psi_m$ & (\curru where $m \geq 1$. \end{RuleDescription} +\begin{RuleDescription}{reordering} +\begin{AletheX} +$i$. & \ctxsep & $\varphi_1, \cdots, \varphi_n$ & ($\dots$) \\ +$j$. & \ctxsep & $\psi_1, \cdots, \psi_n$ & (\currule\;$i$) \\ +\end{AletheX} +where the multisets $\{\varphi_1, \cdots, \varphi_n\}$ and $\{\psi_1, \cdots, \psi_n\}$ +are the same. That is, the conclusion of the rule is a reordering of the +literals in the premise. +\end{RuleDescription} + \begin{RuleDescription}{not_and} \begin{AletheX} $i$. & \ctxsep & $\neg (\varphi_1 \land \dots \land \varphi_n)$ & ($\dots$) \\