From 9dab69e5001fba4403a1e1a2f1ad9599dd637d4b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Hans-J=C3=B6rg=20Schurr?= <hansjoerg-schurr@uiowa.edu>
Date: Fri, 20 Jan 2023 14:49:10 -0600
Subject: [PATCH] Remove trailing whitespaces

---
 spec/changelog.tex |  2 +-
 spec/doc.tex       | 48 +++++++++++++++++++++++-----------------------
 spec/rule_list.tex | 44 +++++++++++++++++++++---------------------
 3 files changed, 47 insertions(+), 47 deletions(-)

diff --git a/spec/changelog.tex b/spec/changelog.tex
index 59f2eb5..ca49bf1 100644
--- a/spec/changelog.tex
+++ b/spec/changelog.tex
@@ -46,7 +46,7 @@ The language has a formal definition and a proof of soundness.  The syntax
 describes how proofs are encoded in the text file.
 
 The syntax was extended to allow extra annotations.  Tools consuming Alethe
-proofs must be able to ignore such extra annotations. 
+proofs must be able to ignore such extra annotations.
 
 List of rules:
 \begin{itemize}
diff --git a/spec/doc.tex b/spec/doc.tex
index 738d5e5..553f4b1 100644
--- a/spec/doc.tex
+++ b/spec/doc.tex
@@ -176,7 +176,7 @@ break
 \end{inner-rule}
 }
 
-\theoremstyle{definition} 
+\theoremstyle{definition}
 \newtheorem{RuleExample}{Example}[inner-rule]
 
 % TODO: synchronize colors!
@@ -403,10 +403,10 @@ The paragraphs below describe the concepts necessary to
 understand the proof step by step.
 
 \begin{Alethe}
-1.& \ctxsep & $\forall x.\, (P\,x)$ & $ \proofRule{assume}$ \\ 
-2.& \ctxsep & $\neg (P\,a)        $ & $ \proofRule{assume}$ \\ 
-3.& \ctxsep & $\neg (\forall x.\, (P\,x)) \lor (P\,a)$ & $\proofRule{forall_inst}\,[(x, a)]$ \\ 
-4.& \ctxsep & $\neg (\forall x.\, (P\,x)), (P\,a)$ & $ (\proofRule{or}\:3)$ \\ 
+1.& \ctxsep & $\forall x.\, (P\,x)$ & $ \proofRule{assume}$ \\
+2.& \ctxsep & $\neg (P\,a)        $ & $ \proofRule{assume}$ \\
+3.& \ctxsep & $\neg (\forall x.\, (P\,x)) \lor (P\,a)$ & $\proofRule{forall_inst}\,[(x, a)]$ \\
+4.& \ctxsep & $\neg (\forall x.\, (P\,x)), (P\,a)$ & $ (\proofRule{or}\:3)$ \\
 5.& \ctxsep & $\bot             $ & $ (\proofRule{resolution}\: 1, 2, 4)$ \\
 \end{Alethe}
 
@@ -500,7 +500,7 @@ introduce local assumptions. The \proofRule{subproof} {\em rule} discharges the
 local assumptions.
 From an
 assumption $\varphi$ and a formula $\psi$ proved
-from $\varphi$, the \proofRule{subproof} rule deduces the clause $\neg \varphi, 
+from $\varphi$, the \proofRule{subproof} rule deduces the clause $\neg \varphi,
 \psi$ that discharges the local assumption $\varphi$.
 %
 A \proofRule{subproof} step cannot use a premise from a subproof nested
@@ -518,15 +518,15 @@ formula $(2 + 2) ≈ 5$. The proof uses a subproof to prove the
 lemma $((2 + 2) ≈ 5) \Rightarrow 4 ≈ 5$.
 
 \begin{Alethe}
-1.&  \ctxsep &  $(2 + 2) ≈ 5$ &  $\proofRule{assume}$ \\ 
-2.&  \spctxsep &  $(2 + 2) ≈ 5 $ &  $\proofRule{assume}$ \\ 
-3.&  \spctxsep &  $(2 + 2) ≈ 4 $ &  $\proofRule{sum_simplify}$ \\ 
+1.&  \ctxsep &  $(2 + 2) ≈ 5$ &  $\proofRule{assume}$ \\
+2.&  \spctxsep &  $(2 + 2) ≈ 5 $ &  $\proofRule{assume}$ \\
+3.&  \spctxsep &  $(2 + 2) ≈ 4 $ &  $\proofRule{sum_simplify}$ \\
 4.&  \spctxsep &  $4 ≈ 5       $ &  $(\proofRule{trans}\ 2, 3)$ \\
 \spsep
-5.&  \ctxsep &  $\neg((2 + 2) ≈ 5), 4 ≈ 5$ &  $\proofRule{subproof}$ \\ 
-6.&  \ctxsep &  $(4 ≈ 5)≈ \bot$ &  $\proofRule{eq_simplify}$ \\ 
-7.&  \ctxsep &  $\neg((4 ≈ 5)≈ \bot), \neg(4≈ 5), \bot $ &  $\proofRule{equiv_pos2}$ \\ 
-8.&  \ctxsep &  $\bot $ &  $(\proofRule{resolution}\ 1, 5, 6, 7)$ \\ 
+5.&  \ctxsep &  $\neg((2 + 2) ≈ 5), 4 ≈ 5$ &  $\proofRule{subproof}$ \\
+6.&  \ctxsep &  $(4 ≈ 5)≈ \bot$ &  $\proofRule{eq_simplify}$ \\
+7.&  \ctxsep &  $\neg((4 ≈ 5)≈ \bot), \neg(4≈ 5), \bot $ &  $\proofRule{equiv_pos2}$ \\
+8.&  \ctxsep &  $\bot $ &  $(\proofRule{resolution}\ 1, 5, 6, 7)$ \\
 \end{Alethe}
 
 \end{example}
@@ -543,7 +543,7 @@ denoted $x_i\mapsto t_i$.
 In the first case, we say that $c_i$ {\em fixes} the
 variable.  The second case is a mapping.
 Throughout this chapter, $\Gamma$ denotes
-an arbitrary context. 
+an arbitrary context.
 
 % TODO: define \subst and related
 Every context $\Gamma$ induces a substitution
@@ -716,7 +716,7 @@ as if proxy names introduced by \inlineAlethe{:named} annotations have been
 expanded and annotations have been removed.  For example, the term
 \inlineAlethe{(or (! (P a) :named baz) (! baz :foo))} and
 \inlineAlethe{(or (P a) (P a))} are considered to be syntactically equal.
-Here \inlineAlethe{:foo} is an arbitrary {\smtlib} annotation. 
+Here \inlineAlethe{:foo} is an arbitrary {\smtlib} annotation.
 
 Figure~\ref{fig:grammar} shows the grammar of the proof text. It
 is based on the {\smtlib} grammar, as defined in the {\smtlib}
@@ -976,10 +976,10 @@ $C_i$ in $P$ uses $i$ as its index.
 The context
 only changes at anchors and subproof-concluding steps.
 Therefore, the elements of $C_1, \dots, C_n$ that are steps
-are not associated with a context.  
+are not associated with a context.
 Instead, the context can be computed
 from the prior anchors.
-The anchors only ever extend the context. 
+The anchors only ever extend the context.
 
 To check an Alethe proof we can iteratively eliminate the first-innermost
 subproof, i.e., the innermost subproof that does not come after a
@@ -1157,7 +1157,7 @@ It is useful to give precise semantics
 to contexts to have the tools to check that rules that use contexts
 are sound.
 Contexts are local in the sense that they affect only the
-proof step they are applied to. 
+proof step they are applied to.
 For the full details on contexts see~\cite{barbosa-2019}.
 The presentation here is adapted from this publication, but omits some
 details.
@@ -1361,7 +1361,7 @@ nested subproofs.
   $\psi_{\mathit{start}+n} \vDash \psi_{\mathit{start}+n}$ which can
   be weakened to $V_n \vDash \psi_{\mathit{start}+n}$.
   In the first case, the step $C_{\mathit{start}+n}$ has a set of
-  premises $S$.  
+  premises $S$.
   For each step $C_{\mathit{start}+i} \in S$ we have $i < n$ and
   $V_i \vDash \psi_{\mathit{start}+i}$ due to the induction
   hypothesis. Since $i < n$, the premises $V_i$ are a subset of $V_n$ and
@@ -1385,7 +1385,7 @@ nested subproofs.
   \vDash \neg\varphi_1, \cdots, \neg\varphi_m, l_1, \dots, l_o.
   \]
   where $l_1, \dots, l_o$ are the literals of $\psi_{\mathit{end}-1}$.
-  This clause is exactly the conclusion of the 
+  This clause is exactly the conclusion of the
   step $C_{\mathit{end}}$
   according to the definition of the \proofRule{subproof} rule.
 \end{proof}
@@ -1411,7 +1411,7 @@ subproofs with contexts.  This is slightly complicated by the
   C_{\mathit{start}}]$ where $δ$ is either the largest index
   $δ < {\mathit{start}}$ such
   that $s_{δ}$ is an anchor, or $1$ if no such index exist.
-  Hence, there is no anchor between $C_{δ}$ and $C_{\mathit{start}}$. 
+  Hence, there is no anchor between $C_{δ}$ and $C_{\mathit{start}}$.
 \end{lemma}
 \begin{proof}
   The step $C_{\mathit{start}}$ is an anchor due to the definition
@@ -1458,7 +1458,7 @@ $\mathit{end}$.   & $\Gamma$          & \ctxsep & $\psi$    & $(\ruleType{rule}\
   depend on some \proofRule{assume} steps that appear before them
   in their subproof.  This is the case if the steps are outermost steps, or
   if the subproof that starts at $C_{δ}$ concludes with
-  a \proofRule{subproof} step. 
+  a \proofRule{subproof} step.
   %
   In this case we can, as we saw in the proof of
   Lemma~\ref{lem:sound_subproof}, weaken their judgments to include
@@ -1626,7 +1626,7 @@ The left-hand side is a formula starting with an existential quantifier
 over some variable $x$.  In the formula on the right-hand side, the
 variable is replaced by the appropriate Skolem term.
 To provide a proof for the replacement, the \proofRule{sko_ex} step
-uses one premise. 
+uses one premise.
 The premise
 has a context that maps the existentially quantified variable
 to the appropriate Skolem term.
@@ -1649,7 +1649,7 @@ is functional congruence, and \proofRule{sko_forall} works like
 \begin{AletheS}
 1. & \spctx{$x\mapsto (\varepsilon x.\,\neg (p\,x))$}
      & \ctxsep
-     &  $x  ≈   \varepsilon x.\,\neg (p\,x) $ & 
+     &  $x  ≈   \varepsilon x.\,\neg (p\,x) $ &
      $\proofRule{refl}$ \\
 2. & \spctx{$x\mapsto (\varepsilon x.\,\neg (p\,x))$} & \ctxsep &  $ (p\,x) ≈ p(\varepsilon x.\,\neg (p\,x))$ &  $(\proofRule{cong}\, 1)$ \\
  \spsep
diff --git a/spec/rule_list.tex b/spec/rule_list.tex
index 84c984e..479bd14 100644
--- a/spec/rule_list.tex
+++ b/spec/rule_list.tex
@@ -292,7 +292,7 @@ This rule is the resolution of two or more clauses.
 $i_1$. & \ctxsep & $l^1_1$, $\dots$, $l^1_{k^1}$  & ($\ruleType{...}$) \\
 \aletheLine
 $i_n$. & \ctxsep & $l^n_1$, $\dots$, $l^n_{k^n}$  & ($\ruleType{...}$) \\
-  $j$. & \ctxsep & $l^{r_1}_{s_1}$, $\dots$, $l^{r_m}_{s_m}$  & ($\currule\;i_1,\dots, i_n$) \\ 
+  $j$. & \ctxsep & $l^{r_1}_{s_1}$, $\dots$, $l^{r_m}_{s_m}$  & ($\currule\;i_1,\dots, i_n$) \\
 \end{AletheX}
 where $l^{r_1}_{s_1} , \dots , l^{r_m}_{s_m}$ are from $l^{i}_{j}$ and
 are the result of a chain of predicate resolution steps on the clauses of
@@ -356,11 +356,11 @@ last step of the subproof is the conclusion.
 \begin{AletheX}
 $i_1$. & \spctxsep  & $\varphi_1$  & $\proofRule{assume}$ \\
 \aletheLine
-$i_n$. & \spctxsep  & $\varphi_n$  & $\proofRule{assume}$ \\ 
+$i_n$. & \spctxsep  & $\varphi_n$  & $\proofRule{assume}$ \\
 \aletheLineB
 $j$. & \spctxsep  & $\psi$  & ($\dots$) \\
 \spsep
-k. & \ctxsep  & $\neg\varphi_1$,\dots, $\neg\varphi_n$, $\psi$   & $\proofRule{subproof}$ \\ 
+k. & \ctxsep  & $\neg\varphi_1$,\dots, $\neg\varphi_n$, $\psi$   & $\proofRule{subproof}$ \\
 \end{AletheX}
 
 \end{RuleDescription}
@@ -402,10 +402,10 @@ each $i$, let $\varphi := \varphi_i$ and $a := a_i$.
 \begin{enumerate}
     \item If $\varphi = s_1 > s_2$, then let $\varphi := s_1 \leq s_2$.
       If $\varphi = s_1 \geq s_2$, then let $\varphi := s_1 < s_2$.
-      If $\varphi = s_1 < s_2$, then let $\varphi := s_1 \geq s_2$. 
+      If $\varphi = s_1 < s_2$, then let $\varphi := s_1 \geq s_2$.
       If $\varphi = s_1 \leq s_2$, then let $\varphi := s_1 > s_2$. This negates
       the literal.
-     \item If $\varphi = \neg (s_1 \bowtie s_2)$, then let $\varphi := s_1 \bowtie s_2$. 
+     \item If $\varphi = \neg (s_1 \bowtie s_2)$, then let $\varphi := s_1 \bowtie s_2$.
     \item Replace $\varphi$ by $\sum_{i=0}^{n}c_i\times{}t_i - \sum_{i=n+1}^{m} c_i\times{}t_i
     \bowtie d$ where $d := d_2 - d_1$.
     \item \label{la_generic:str}Now $\varphi$ has the form $s_1 \bowtie d$. If all
@@ -453,7 +453,7 @@ To verify this we have to check the insatisfiability of $(f\,a) > (f\,b) \land
 (f\,a) - (f\,b) ≈ 0$. Since we don't have an integer sort in this logic step~4 does
 not apply. Finally, after step~5 the conjunction is $(f\,a) - (f\,b) > 0 \land
 - (f\,a) + (f\,b) ≈ 0$. This sums to $0 > 0$, which is a contradiction.
-\end{RuleExample} 
+\end{RuleExample}
 
 \begin{RuleExample}
 The following \proofRule{la_generic} step is from a \textsf{QF\_UFLIA} problem:
@@ -487,7 +487,7 @@ can be NP-hard. Hence, this rule should be avoided when possible.
 
 \begin{RuleDescription}{la_disequality}
 \begin{AletheX}
-$i$. & \ctxsep  & 
+$i$. & \ctxsep  &
 $t_1 ≈ t_2 \lor \neg (t_1 \leq t_2) \lor \neg (t_2 \leq t_1)$
 & (\currule) \\
 \end{AletheX}
@@ -513,7 +513,7 @@ checking the \proofRule{la_generic} the result is trivially unsatisfiable.
 The second form handles bounds on linear combinations. It is binary clause:
 
 \begin{AletheX}
-$i$. & \ctxsep & 
+$i$. & \ctxsep &
 $\varphi_1 \lor \varphi_2$ % Checked: this is a proper disjunction not a cl
  & (\currule) \\
 \end{AletheX}
@@ -540,7 +540,7 @@ as for the rule \proofRule{la_generic}.
 $j$. & \spctx{ $\Gamma, y_1,\dots, y_n,  x_1 \mapsto y_1, \dots ,  x_n \mapsto y_n$}
    & \ctxsep & $\varphi ≈ \varphi'$ & ($\dots$) \\
    \spsep
-$k$. & & \ctxsep & 
+$k$. & & \ctxsep &
     $\forall x_1, \dots, x_n.\varphi ≈ \forall y_1, \dots, y_n. \varphi'$
      & \currule{} \\
 \end{AletheXS}
@@ -568,7 +568,7 @@ The \currule{} rule skolemizes universal quantifiers.
 
 \begin{AletheXS}
 \aletheLineS
-$j$. & 
+$j$. &
 \spctx{$\Gamma, x_1 \mapsto (\varepsilon x_1.\neg\varphi), \dots,  x_n \mapsto (\varepsilon x_n.\neg\varphi)$}
    & \ctxsep & $\varphi ≈ \psi$ & ($\dots$) \\
  \spsep
@@ -579,7 +579,7 @@ $k$. & & \ctxsep  & $\forall x_1, \dots, x_n.\varphi ≈ \psi$ & \currule{} \\
 
 \begin{RuleDescription}{forall_inst}
 \begin{AletheX}
-$i$. & \ctxsep & 
+$i$. & \ctxsep &
 $\neg (\forall x_1, \dots, x_n. P) \lor P[x_1\mapsto t_1]\dots[x_n\mapsto t_n]$
  & \currule\, [$(x_{k_1}, t_{k_1})$, $\dots$, $(x_{k_n}, t_{k_n})$] \\
 \end{AletheX}
@@ -637,7 +637,7 @@ $t_1 ≈ t_n$ & \currule \\
 
 \begin{RuleDescription}{eq_congruent}
 \begin{AletheX}
-$i$. & \ctxsep & 
+$i$. & \ctxsep &
 $\neg (t_1 ≈ u_1)$, $\dots$ ,$\neg (t_n ≈ u_n)$,
 $(f\,t_1\, \cdots\,t_n) ≈ (f\,u_1\, \cdots\,u_n)$
  & \currule \\
@@ -647,7 +647,7 @@ $(f\,t_1\, \cdots\,t_n) ≈ (f\,u_1\, \cdots\,u_n)$
 \begin{RuleDescription}{eq_congruent_pred}
 \begin{AletheX}
 
-$i$. & \ctxsep     & 
+$i$. & \ctxsep     &
 $\neg (t_1 ≈ u_1)$, \dots ,$\neg (t_n ≈ u_n)$,
 $(P\,t_1\, \cdots\,t_n) ≈ (P\,u_1\, \cdots\,u_n)$
  & \currule \\
@@ -657,7 +657,7 @@ where $P$\, is a function symbol with co-domain sort $\lsymb{Bool}$.
 
 \begin{RuleDescription}{qnt_cnf}
 \begin{AletheX}
-$i$. & \ctxsep & 
+$i$. & \ctxsep &
 $\neg(\forall x_1, \dots, x_n. \varphi) \lor \forall x_{k_1}, \dots, x_{k_m}.\varphi'$
  & \currule \\
 \end{AletheX}
@@ -715,7 +715,7 @@ and $1 \leq k \leq n$.
 
 \begin{RuleDescription}{or}
 \begin{AletheX}
-$i$. & \ctxsep & 
+$i$. & \ctxsep &
 $\varphi_1 \lor \cdots \lor \varphi_n$ & ($\dots$) \\
 $j$. & \ctxsep & $\varphi_1, \dots, \varphi_n$ & (\currule\;$i$) \\
 \end{AletheX}
@@ -967,25 +967,25 @@ $j$. & \ctxsep & $\neg\varphi_1 , \neg\varphi_2$ & (\currule\;$i$) \\
   This rule is used to replace connectives by their definition. It can be one
   of the following:
 \begin{AletheXS}
-$i$. & \ctxsep  & $\Gamma$  & 
+$i$. & \ctxsep  & $\Gamma$  &
     $(\lsymb{xor}\,\varphi_1\,\varphi_2) ≈
     ((\neg\varphi_1 \land \varphi_2) \lor (\varphi_1 \land \neg\varphi_2))$ & \currule \\
 \end{AletheXS}
 
 \begin{AletheXS}
-$i$. & \ctxsep  & $\Gamma$  & 
+$i$. & \ctxsep  & $\Gamma$  &
       $(\varphi_1 ≈ \varphi_2) ≈
       ((\varphi_1 \rightarrow \varphi_2) \land (\varphi_2 \rightarrow \varphi_1))$ & \currule \\
 \end{AletheXS}
 
 \begin{AletheXS}
-$i$. & \ctxsep  & $\Gamma$  & 
+$i$. & \ctxsep  & $\Gamma$  &
       $(\lsymb{ite}\,\varphi_1\,\varphi_2\,\varphi_3) ≈
       ((\varphi_1 \rightarrow \varphi_2) \land (\neg\varphi_1 \rightarrow \varphi_3))$ & \currule \\
 \end{AletheXS}
 
 \begin{AletheXS}
-$i$. & \ctxsep  & $\Gamma$  & 
+$i$. & \ctxsep  & $\Gamma$  &
       $(\forall x_1, \dots, x_n.\,\varphi) ≈ \neg(\exists x_1, \dots, x_n.\,
       \neg\varphi)$ & \currule \\
 \end{AletheXS}
@@ -1407,7 +1407,7 @@ $i_n$. & $\Gamma$ & \ctxsep & $t_{n} ≈ s_{n}$ & ($\dots$) \\
 $j$. & \spctx{$\Gamma, x_1 \mapsto s_1, \dots,  x_n \mapsto s_n$}
    & \ctxsep &  $u ≈ u'$ & ($\dots$) \\
 \spsep
-$k$. & $\Gamma$ & \ctxsep & 
+$k$. & $\Gamma$ & \ctxsep &
      $(\lsymb{let}\,x_1 = t_1,\, \dots,\, x_n = t_n\,\lsymb{in}\, u) ≈ u'$
      & (\currule{}\;$i_1$, \dots, $i_n$) \\
 \end{AletheXS}
@@ -1430,7 +1430,7 @@ If applied to terms of type $\lsymb{Bool}$ more than two terms can never be
 distinct, hence only two cases are possible:
 
 \begin{AletheXS}
-$i$. & \ctxsep & $\Gamma$ & 
+$i$. & \ctxsep & $\Gamma$ &
 $(\lsymb{distinct}\,\varphi\,\psi) ≈ \neg (\varphi ≈ \psi)$ & \currule \\
 \end{AletheXS}
 and
@@ -1443,7 +1443,7 @@ $(\lsymb{distinct}\,\varphi_1\,\varphi_2\,\varphi_3\,\dots) ≈ \bot$ & \currule
 The general case is
 
 \begin{AletheXS}
-$i$. & \ctxsep & $\Gamma$ & 
+$i$. & \ctxsep & $\Gamma$ &
 $(\lsymb{distinct}\,t_1\,\dots\, t_n) ≈
 \bigwedge_{i=1}^{n}\bigwedge_{j=i+1}^{n} t_i\;{\not≈}\;t_j$ & \currule \\
 \end{AletheXS}
-- 
GitLab