text:
\section{Introduction}

In~\cite{kop:nis:13}, \emph{logically constrained term rewriting
systems} are introduced (building on~\cite{fur:nis:sak:kus:sak:08}
and~\cite{fal:kap:09}).  These \emph{LCTRSs} combine many-sorted
term rewriting with constraints in an arbitrary theory, and can be
used for analysing for instance imperative programs.

\emph{Termination} is an important part of such analysis, both for
its own sake (to guarantee finite program evaluation), and to create
an induction principle that can be used as part of other analyses
(for instance proofs of confluence~\cite{ter:03} or function
equality~\cite{fur:nis:sak:kus:sak:08}).

In unconstrained term rewriting,
many termination techniques exist, often centred around
\emph{dependency pairs}~\cite{art:gie:00}.
Some of these methods have
also been transposed to integer rewriting with
constraints~\cite{fal:kap:09}.  However, that setting is focused
purely on proving termination for its own sake, and thus poses very
strong restrictions on term and rule formation.

In this paper, we will see how a basic dependency pair approach can
be defined for LCTRSs, and extend several termination methods which
build around dependency pairs.

\section{Preliminaries (from~\cite{kop:nis:13})}

We assume standard notions of many-sorted term rewriting to be
well-uderstood.

Let $\mathcal{V}$ be an infinite set of sorted variables, $\Sigma =
\Sigma_{\mathit{terms}} \cup \Sigma_{\mathit{theory}}$ be a many-sorted signature, $\mathcal{I}$ a
mapping which assigns to each sort occurring in $\Sigma_{\mathit{theory}}$ a
set, and $\mathcal{J}$ a function which maps each $f : [\iota_1 \times
\ldots \times \iota_n] \Rightarrow \kappa \in \Sigma_{\mathit{theory}}$ to a
function $\mathcal{J}_f$ in $\mathcal{I}_{\iota_1} \Longrightarrow \ldots \Longrightarrow
\mathcal{I}_{\iota_n} \Longrightarrow \mathcal{I}_\kappa$.
For every sort $\iota$ occurring in $\Sigma_{\mathit{theory}}$ we also fix a set
$\mathcal{V}al_\iota \subseteq
\Sigma_{\mathit{theory}}$ of \emph{values}: function symbols $a : [] \Rightarrow
\iota$, where $\mathcal{J}$ gives a one-to-one mapping from $\mathcal{V}al_\iota$
to $\mathcal{I}_\iota$.
A value $c$ is identified with the term $c()$.
The elements of $\Sigma_{\mathit{theory}}$ and $\Sigma_{\mathit{terms}}$ overlap only on
values.

We call a term in $\mathcal{T}\mathit{erms}(\Sigma_{\mathit{theory}},\mathcal{V})$ a
\emph{logical term}.
For ground logical terms, we define
$
\interpret{f(s_1,\ldots,s_n)} :=
  \mathcal{J}_f(\interpret{s_1},\ldots,\interpret{s_n})
$.
A ground logical term $s$ \emph{has value} $t$ if $t$
is a value such that $\interpret{s} = \interpret{t}$.
Every ground logical term has a unique value.
A \emph{constraint} is a logical term of some sort $\symb{bool}$
with $\mathcal{I}_\symb{bool} = \mathbb{B}$, the set of booleans.
A constraint $s$ is \emph{valid} if
$\interpret{\subst{s}{\gamma}}_\mathcal{J} = \top$
for all substitutions $\gamma$ which map the variables in
$\mathit{Var}(s)$ to a value.

A \emph{rule} is a triple $l \rightarrow r\ \constraint{\varphi}$ where $l$
and $r$ are terms with the same sort and $\varphi$ is a constraint;
$l$ is not a logical term (so also not a variable).
If $\varphi = \symb{true}$
with $\mathcal{J}(\symb{true}) = \top$, the rule is \linebreak just denoted $l
\rightarrow r$.
We define $\mathit{LVar}(l \rightarrow r\ \constraint{\varphi}))$ as $\mathit{Var}(\varphi)
\cup (\mathit{Var}(r) \setminus \mathit{Var}(l))$.
A substitution $\gamma$ \emph{respects} $l \rightarrow r\
\constraint{\varphi}$ if
$\gamma(x)$ is a value for all $x \in
\mathit{LVar}(l \rightarrow r\ \constraint{\varphi})$ and $\subst{\varphi}{\gamma}$
is valid.

Given a set of rules $\mathcal{R}$, the \emph{rewrite relation}
$\rightarrow_{\mathcal{R}}$ is the union of $\arrz_{\mathtt{rule}}$ and $\arrz_{\mathtt{calc}}$, where:
\begin{itemize}
\item $C[l\gamma] \arrz_{\mathtt{rule}} C[r\gamma]$ if $l \rightarrow r\
  \constraint{\varphi} \in \mathcal{R}$ and $\gamma$ respects $l \rightarrow r\
  \constraint{\varphi}$;
\item $C[f(s_1,\ldots,s_n)] \arrz_{\mathtt{calc}} C[v]$ if $f
  \in \Sigma_{\mathit{theory}}\setminus\Sigma_{\mathit{terms}}$, all\ $s_i$ values and
  $v$ is the value of $f(\vec{s})$
\end{itemize}

A reduction step with $\arrz_{\mathtt{calc}}$ is called a \emph{calculation}.
In an LCTRS with rules $\mathcal{R}$, the \emph{defined symbols} are all
symbols $f$ such that a rule $f(\vec{l}) \rightarrow r\
\constraint{\varphi}$ exists in $\mathcal{R}$.  Symbols $f \in
\Sigma_{\mathit{theory}} \setminus \mathcal{V}al$ are called \emph{calculation symbols}
and all other symbols are \emph{constructors}.

\begin{example}\label{ex:ackermann}
We consider an LCTRS with sorts $\symb{int}$ and $\symb{bool}$, with $\mathcal{I}_\symb{bool} =
\mathbb{B}$ and $\symb{int}$ mapped to the set of 16-bit signed
integers; addition is sensitive to overflow.
The rules are a naive implementation of the Ackermann function
(which will likely fall prey to overflows):
\vspace{-5pt}
\[
\begin{array}{rcllrcl}
\symb{A}(m,n) & \rightarrow & \symb{A}(m-\symb{1},\symb{A}(m,n-\symb{1})) &
  \constraint{m \neq \symb{0} \wedge n \neq \symb{0}} &
\quad
\symb{A}(\symb{0},n) & \rightarrow & n+\symb{1} \\
\symb{A}(m,\symb{0}) & \rightarrow & \symb{A}(m-\symb{1}, \symb{1}) &
  \constraint{m \neq \symb{0}} \\
\end{array}
\]
\vspace{-5pt}
$\symb{A}$ is a defined symbols, $+,-,\neq,\wedge$ calculation symbols,
and all integers are constructors.
\end{example}

\section{Dependency Pairs}

As the basis for termination analysis, we will consider
\emph{dependency pairs}~\cite{art:gie:00}.
We first introduce a fresh sort $\symb{dpsort}$, and for all defined
symbols $f : [\iota_1 \times \ldots \times \iota_n] \Rightarrow
\kappa$ also a new symbol $\up{f} : [\iota_1 \times \ldots
\times \iota_n] \Rightarrow \symb{dpsort}$.  If $s =
f(s_1,\ldots, s_n)$ with $f$ defined,
then $\up{s} := \up{f}(s_1,\ldots,s_n)$.

The dependency pairs of a given rule $l \rightarrow r\ \constraint{\varphi}
$ are all rules of the form $\up{l} \rightarrow \up{p}\ \constraint{\varphi
}$ where $p$ is a subterm of $r$ which is headed by a defined symbol.
The set of dependency pairs for a given set of rules $\mathcal{R}$,
notation $\mathsf{DP}(\mathcal{R})$, consists of all dependency pairs of any rule
in $\mathcal{R}$.

\begin{example}\label{ex:ackdp}
Noting that for instance $\up{\symb{A}}(m,\symb{0}) \rightarrow m \up{-} \symb{1}$ is
\emph{not} a dependency pair, since $-$ is a calculation symbol
and not a defined symbol, Example~\ref{ex:ackermann} has three
dependency pairs:
\vspace{-5pt}
\[
\begin{array}{lrcll}
1. & \up{\symb{A}}(m,\symb{0}) & \rightarrow & \up{\symb{A}}(m-\symb{1},\symb{1}) &
  \constraint{m \neq \symb{0}} \\
2. & \up{\symb{A}}(m,n) & \rightarrow & \up{\symb{A}}(m-\symb{1},\symb{A}(m,n-\symb{1})) &
  \constraint{m \neq \symb{0} \wedge n \neq \symb{0}} \\
3. & \up{\symb{A}}(m,n) & \rightarrow & \up{\symb{A}}(m,n-\symb{1}) &
  \constraint{m \neq \symb{0} \wedge n \neq \symb{0}} \\
\end{array}
\]
\end{example}

Fixing a set $\mathcal{R}$ of rules, and given a set $\P$ of dependency
pairs, a \emph{$\P$-chain} is a sequence $\rho_1,\rho_2,\ldots$ of
dependency pairs such that
  all $\rho_i$ are elements of $\P$, but with distinctly renamed
  variable
, and
there is
some
$\gamma$ which respects all $\rho_i$,
  such that for all $i$: if $\rho_i = l_i \rightarrow p_i\ \constraint{
  \varphi_i}$ and $\rho_{i+1} = l_{i+1} \rightarrow p_{i+1}\ \constraint{
  \varphi_{i+1}}$, then $\subst{p_i}{\gamma} \arrr{\mathcal{R}} \subst{l_{
  i+1}}{\gamma}$.
  Also, the strict subterms of $l_i\gamma$ terminate.
We call $\P$ a \emph{DP problem} and say that $\P$
is \emph{chain-free} if there is no infinite
$\P$-chain.\footnote{In the literature, we consider tuples of sets
and flags, which is necessary if we also want to consider non-minimal
chains, innermost termination or non-termination.  For simplicity
those are omitted here.}\footnote{In the literature, the word
\emph{finite} is used instead of \emph{chain-free}.  Since we have a
single set instead of a tuple, we used a different word to avoid
confusion (as ``finite'' might refer to the number of elements).}

\begin{theorem}\label{thm:dpchain}
An LCTRS $\mathcal{R}$ is terminating if and only if $\mathsf{DP}(\mathcal{R})$ is
chain-free.
\end{theorem}

\section{The Dependency Graph}

To prove chain-freeness of a DP problem, we might for instance use the
dependency graph:

\begin{definition}
A \emph{dependency graph approximation} of a DP problem $\P$ is a
graph $G$ whose nodes are the elements of $\P$ and which has an edge
between $\rho_1$ and $\rho_2$ if $(\rho_1,\rho_2')$ is a
$\P$-chain, where $\rho_2'$ is a copy of $\rho_2$ with fresh
variables.  $G$ may have additional edges.
\end{definition}

\begin{theorem}\label{thm:graph}
A DP problem $\P$ with graph approximation $G$ is chain-free if and
only if $\P'$ is chain-free for every strongly connected component
(SCC) $\P'$\! of $G$.
\pagebreak
\end{theorem}

\begin{example}\label{ex:graph}
Consider an LCTRS with rules $\mathcal{R} = \{ f(x) \rightarrow
f(\symb{0}-x)\ \constraint{x > \symb{0}} \}$.  Then
$\mathsf{DP}(\mathcal{R}) = \{ \up{f}(x) \rightarrow \up{f}(-x)\
\constraint{x > \symb{0}} \}$.  The dependency graph of $\mathsf{DP}(
\mathcal{R})$ has
one node, and no edges, since there is no substitution $\gamma$
which satisfies both $\gamma(x) > \symb{0}$ and $\gamma(y) >
\symb{0}$ and yet has $(-x)\gamma \arrr{\mathcal{R}} y\gamma$ (as
logical terms reduce only with $\arrz_{\mathtt{calc}}$).
Thus, clearly every SCC of this graph is terminating, so
$\mathsf{DP}(\mathcal{R})$ is chain-free, so $\mathcal{R}$ is terminating!
\end{example}

Of course, manually choosing a graph approximation is one thing,
but finding a good one \emph{automatically} is more difficult.  We
consider one way to choose such an approximation:

Given a DP problem $\P$, let $G_\P$ be the graph with the elements of
$\P$ as nodes, and with an edge from $l_1 \rightarrow r_1\ \constraint{
\varphi_1}$ to $l_2 \rightarrow r_2\ \constraint{\varphi_2}$ if the formula
$\varphi_1 \wedge \varphi_2' \wedge \psi(r_1,l_2',\mathit{LVar}(l_1 \rightarrow r_1\
\constraint{\varphi_1})\linebreak \cup \mathit{LVar}(l_2' \rightarrow r_2'\
\constraint{\varphi_2'}))$ is satisfiable (or its satisfiability
cannot be determined).  Here, $l_2' \rightarrow r_2'\
\constraint{\varphi_2'}$ is a copy of $l_2 \rightarrow r_2\ \constraint{
\varphi_2}$ with fresh variables,
and $\psi(s,t,L)$ is given by the
clauses:

\begin{itemize}
\item $\psi(s,t,L) = \top$ if either $s$ is a variable
  not in $L$, or $s = f(s_1,\ldots,s_n)$ and one
  of:
  \begin{itemize}
  \item $f$ is a defined symbol, and $s \notin
    \mathcal{T}\mathit{erms}(\Sigma_{\mathit{theory}},L)$,
  \item $f$ is a calculation symbol, $t$ a value or
    variable, and $s \notin \mathcal{T}\mathit{erms}(\Sigma_{\mathit{theory}},L)$,

  \item $f$ is a constructor and $t$ a variable not in $L$;
  \end{itemize}
\item $\psi(s,t,L) = \bigwedge_{i = 1}^n \psi(
  s_i,t_i,L)$ if $s = f(s_1,\ldots,
  s_n)$ and $t = f(t_1,\ldots,t_n)$ and
  $f$ not defined;
\item $\psi(s,t,L)$ is the formula $s =
  t$ if
  $s \in \mathcal{T}\mathit{erms}(\Sigma_{\mathit{theory}},L)$,\
  $t \in \mathcal{T}\mathit{erms}(\Sigma_{\mathit{theory}},\mathcal{V})$ and
  $s$ and $t$ are not headed by the same theory symbol
  (we already covered that case);
\item $\psi(s,t,L) = \bot$ in all other cases.
\end{itemize}

\begin{theorem}\label{thm:graphapprox}
$G_\P$ is a graph approximation for $\P$.
\end{theorem}

This graph result and the given approximation
correspond largely with the result of~\cite{sak:nis:sak:11}.

\begin{example}
The graph in Example~\ref{ex:graph} is calculated with this method:
$\psi(\up{f}(-x),\up{f}(y),\{x,\linebreak
y\})
\wedge x > \symb{0} \wedge y > \symb{0}$ evaluates to
$-x = y \wedge x > \symb{0} \wedge y > \symb{0}$ (as
$\up{f}$ is a constructor with respect to $\mathcal{R}$), which is
not satisfiable (as any decent SMT-solver over the integers can
tell us).
\end{example}

\section{The Value Criterion}

To quickly handle DP problems, we consider a technique similar to the
subterm criterion in the unconstrained case.  This \emph{value
criterion} can also be seen as a simpler version of polynomial
interpretations, which does not require ordering rules (see
Section~\ref{sec:redpair}).

\begin{definition}
Fixing a set $\P$ of dependency pairs, a \emph{projection function}
for $\P$ is a function $\nu$ which assigns to each symbol $\up{f}
: [\iota_1 \times \ldots \times \iota_n] \Rightarrow \symb{dpsort}$
a number $\nu(\up{f}) \in \{1,\ldots,n\}$.  A projection function
is extended to a function on terms as follows:
$\overline{\nu}(\up{f}(s_1,\ldots,s_n)) =
s_{\nu(\up{f})}$.
\end{definition}

\begin{theorem}\label{thm:valuecrit}
Let $\P$ be a set of dependency pairs, $\iota$ a sort and $\nu$ a
projection function for $\P$, with the following property: for any
dependency pair $l \rightarrow r\ \constraint{\varphi} \in \P$, if
$\overline{\nu}(l)$ has sort $\iota$ and is a \standard{value or
variable}\nonstandard{logical term (this includes variables)}, then
the same holds for $\overline{\nu}(r)$.
Let moreover $\succ$ be a well-founded ordering relation on
$\mathcal{I}_\iota$ and $\succeq$ a quasi-ordering such that $\succ \cdot
\succeq\ \subseteq\ \succ$.
Suppose additionally that we can write $\P = \P_1 \cup \P_2$, such
that for all $\rho \equiv l \rightarrow r\ \constraint{\varphi} \in \P$:
\begin{itemize}
\item if $\overline{\nu}(l)$ is a logical term of sort $\iota$, then so is
  $\overline{\nu}(r)$, and $\mathit{Var}(\overline{\nu}(r)) \subseteq \mathit{Var}(\overline{\nu}(l))$;
\item if $\rho \in \P_1$, then $\overline{\nu}(l)$ has sort $\iota$
  and $\overline{\nu}(l) \in \mathcal{T}\mathit{erms}(\Sigma_{\mathit{theory}},\mathit{LVar}(\rho))$;
\item if $\overline{\nu}(l)$ has sort $\iota$ and $\overline{\nu}(l) \in
  \mathcal{T}\mathit{erms}(\Sigma_{\mathit{theory}},\mathcal{V})$, then $\varphi \Rightarrow
  \overline{\nu}(l) \succ \overline{\nu}(r)$ is valid if $\rho \in \P_1$, and
  $\varphi \Rightarrow \overline{\nu}(l) \succeq \overline{\nu}(r)$ is valid if
  $\rho \in \P_2$.
\end{itemize}
Then $\P$ is chain-free if and only if $\P_2$ is chain-free.
\end{theorem}

\begin{proof}
A chain with infinitely many elements of $\P_1$ gives an
infinite $\succeq^* \cdot \succ$ reduction.
\end{proof}

\begin{example}
Using the value criterion, we can complete termination analysis of
the Ackermann example.  Choosing for $\succ$ the \emph{unsigned}
comparison on bitvectors (so $n \succ m$ if either $n$ is negative
and $m$ is not, or $\mathit{sign}(n) = \mathit{sign}(m)$ and $n >
m$), and $\nu(\symb{A}) = 1$, we have:
\begin{itemize}
\item $\up{\symb{A}}(m,\symb{0}) \rightarrow \up{\symb{A}}(m-\symb{1},\symb{1})\
  \constraint{m \neq \symb{0}}$:

  (m \neq \symb{0}) \Rightarrow m \succ m-1$
\item $\up{\symb{A}}(m,n) \rightarrow \up{\symb{A}}(m-\symb{1},\symb{A}(m,n-\symb{1}))\
  \constraint{m \neq \symb{0} \wedge n \neq \symb{0}}$:

  (m \neq \symb{0} \wedge n \neq \symb{0}) \Rightarrow m \succ m-1$
\item $\up{\symb{A}}(m,n) \rightarrow \up{\symb{A}}(m,n-\symb{1})\
  \constraint{m \neq \symb{0} \wedge n \neq \symb{0}}$
  $(m \neq \symb{0} \wedge n \neq \symb{0}) \Rightarrow m \succeq m$
\end{itemize}
All three are valid, so $\P$ is chain-free if $\P_2 =
\{ \up{\symb{A}}(m,n) \rightarrow \up{\symb{A}}(m,n-\symb{1})\ \constraint{m \neq \symb{0}
\wedge \symb{0} \wedge n \neq \symb{0}} \}$ is.
This we prove with another application of the value criterion, now
taking $\nu(\up{\symb{A}}) = 2$.
\end{example}

Note that the difficulty to apply the value criterion is in finding a
suitable value ordering.  There are various systematic techniques for
doing this (depending on the underlying theory), but their specifics
are beyond the scope of this paper.

\section{Reduction Pairs}\label{sec:redpair}

Finally, the most common method to prove chain-freeness is the use of
a \emph{reduction pair}.

A reduction pair $(\succsim,\succ)$ is a
pair of a \emph{monotonic quasi-ordering} and a \emph{well-founded
partial ordering} on terms such that $s \succ t \succsim
q$ implies $s \succ q$.  Note that it is not required
that $\succ$ is included in $\succsim$; $\succsim$ might also for
instance be an equivalence relation.
A rule $l \rightarrow r\ \constraint{\varphi}$ is \emph{compatible} with $R
\in \{ \succsim, \succ \}$ if for all substitutions $\gamma$ which
respect the rule we have: $l\gamma\ R\ r\gamma$.

\begin{theorem}
A set of dependency pairs $\P$ is chain-free if and only if there is
a reduction pair $(\succsim,\succ)$ and we can write $\P = \P_1 \cup
\P_2$ such that $\P_2$ is chain-free, and:
\begin{itemize}
\item all $\rho \in \P_1$ are compatible with $\succ$
  and
      all $\rho \in \P_2$ are compatible with $\succsim$;
\item either all $\rho \in \mathcal{R}$ are compatible with $\succsim$, \\
  or
  all $\rho \in \P$ have the form $l \rightarrow f(s_1,\ldots,
  s_i)\ \constraint{\varphi}$ with all $s_i \in
  \mathcal{T}\mathit{erms}(\Sigma_{\mathit{theory}},\mathit{LVar}(\rho))$;
\item
  $f(\vec{v}) \succsim w$ if $f$ is a calculation symbol,
  $v_1,\ldots,v_n$ are values and $w$ is the value of
  $f(\vec{v})$.
\end{itemize}
\end{theorem}

\noindent
Note that all rules must be compatible with $\succsim$, unless the
subterms of the right-hand sides in $\P$
can only be instantiated to ground logical terms;
in this
(reasonably common!) case, we can ignore the rules in the termination
argument.  This is a weak step in the direction of \emph{usable
rules}, a full treatment of which is beyond the scope of this short
paper.

For the reduction pair, we might for instance use the recursive path
ordering described in~\cite{kop:nis:13}.  Alternatively, we could
consider \emph{polynomial interpretations}:

\begin{theorem}
Given a mapping $\mu$ which assigns to each function symbol $f
: [\iota_1 \times \ldots \times \iota_n] \Rightarrow \kappa \in
\Sigma_{\mathit{terms}} \cup \Sigma_{\mathit{theory}}$ an $n$-ary polynomial over $\mathbb{Z}$, and
a valuation $\alpha$ which maps each variable\linebreak to an integer, every
term $s$ corresponds to an integer
$\overline{\mu}_\alpha(s)$.
Let $s \succ t$ if for all $\alpha$:
$\overline{\mu}_\alpha(s) > \max(0,
\overline{\mu}_\alpha(t))$,
and $s \succsim t$ if for all $\alpha$:
$\overline{\mu}_\alpha(s) = \overline{\mu}_\alpha(t)$.
Then $(\succsim,\succ)$ is a reduction pair.
\end{theorem}

Here, $\succsim$ is an equivalence relation.  Alternatively we might
base $\succsim$ on the $\geq$ relation in $\mathbb{Z}$, but then we must pose
an additional weak monotonicity requirement on $\mu$.

\begin{example}\label{ex:sum}
We consider an LCTRS over the integers, without overflow.  This
example uses bounded iteration, which is common in systems derived
from imperative programs:
\[
\quad\quad
\symb{sum}(x,y) \rightarrow \symb{0}\ \constraint{x > y}
\quad\quad\quad
\symb{sum}(x,y) \rightarrow x + \symb{sum}(x+\symb{1},y)\
  \constraint{x \leq y}
\]
This system admits one dependency pair:
$\up{\symb{sum}}(x,y) \rightarrow \up{\symb{sum}}(x+\symb{1},y)\
\constraint{x \leq y}$.
Neither the dependency graph nor the value criterion can handle this
pair.  We \emph{can} orient it using polynomial interpretations, with
$\mu(\symb{sum}) = \lambda n m.m-n+1$; integer functions and integers
are interpreted as themselves.  Then $x \leq y \Rightarrow y - x + 1
> \max(0, y - (x+1) + 1)$ is valid, so the pair is compatible with
$\succ$ as required.

Thus, $\mathsf{DP}(\mathcal{R})$ is chain-free if and only if $\emptyset$ is
chain-free, which is obviously the case!
\end{example}

\section{Related Work}

The most important related work is~\cite{fal:kap:09}, where a
constrained term rewriting formalism over the integers is introduced,
and methods are developed to prove termination similar to the ones
discussed here.  The major difference with the current work is that
the authors of~\cite{fal:kap:09} impose very strong type restrictions:
they consider only theory symbols (of sort $\mathtt{int}$) and defined
symbols (of sort $\mathtt{unit}$).  Rules have the form
$f(x_1,\ldots,x_n) \rightarrow g(s_1,\ldots,s_n)$,
where the $x_i$ are variables and all $s_i$ are logical
terms.  This significantly simplifies the analysis (for example, the
dependency pairs are exactly the rules), but has more limited
applications; it suffices for proving termination of simple
(imperative) integer programs, but does not help directly for
analysing confluence or function equivalence.

\section{Conclusion}

In this paper, we have seen how termination methods for normal TRSs,
and in particular the dependency pair approach, extend naturally to
the setting of LCTRSs.  Decision procedures are handled by solving
validity of logical formulas.  While this is undecidable in general,
many practical cases can be handled using today's powerful
SMT-solvers.

Considering termination results, we have only seen the tip of the
iceberg.  In the future, we hope to extend the constrained dependency
pair framework to handle also innermost termination and
non-termination.  Moreover, the dependency pair approach can be
strengthened with various techniques for simplifying dependency pair
processors, both adaptations of existing techniques for unconstrained
term rewriting (such as usable rules) and specific methods for
constrained term rewriting (such as the \emph{chaining} method used
in~\cite{fal:kap:09} or methods to add constraints in some cases).

In addition, we hope to provide an automated termination tool for
LCTRSs in the near future.  Such a tool could for instance be coupled
with a transformation tool from e.g.\ C or Java to be
immediately applicable for proving termination of imperative
programs, or can be used as a back-end for analysis tools of confluence
or function equivalence.

redpajama_set_name: RedPajamaArXiv


text:
Disguises is the fifth studio album by American rock band Aiden. Disguises was recorded some time between 2010 and 2011. Unlike previous albums, Disguises has a large usage of gang vocals. It is also their last album with founding drummer Jake Davison.

This is the only album by Aiden to not chart on Billboard Top 200, or any other chart.

So far, three singles have been released. "Walk Among the Dead", "Hysteria" (the first music video of the album), and "A Portrait of the Artist", which was released on their personal YouTube channel "Aidenvision".  The music video for "Hysteria", featuring lyrics critical of religion, shows William Francis singing in a priest's robe juxtaposed with stock footage of burning churches, religious leaders, and social unrest.  The music video for "A Portrait of the Artist" shows the other Aiden band members kidnapping Francis and ultimately hanging him and notably features drummer Ryan Seaman wearing a bandanna in place of Davison.  No video for the first single, "Walk Among the Dead" has been released.

Track listing

Personnel

Aiden
 Jake Davison – drums
 Zombie Nicholas – bass, background vocals
 Angel Ibarra – lead guitar
 Wil Francis – vocals, rhythm guitar, piano

Performers
 Austin Held – additional vocals on "ReEvolver"
 Ash Costello – additional vocals on "Shine"
 Rick Kern – additional vocals
 Jeremy Beddingfield – additional vocals
 Allana Smith – additional vocals
 Roya Nourani – additional vocals
 Daniel Matson – additional vocals
 Jamie Wheelock – additional vocals
 Nicholas McMahan – additional vocals
 Harry MacDonald – additional vocals

Design
 Chad Micheal Ward – cover photo
 Ciera Walters – band photo
 Doublej – layout design

Technical
 William Control – production, engineering, mixing
 Joel Casey Jones – engineering assistant
 Bob Bicknell – engineering assistant
 Justin Armstrong – mixing

Release history

References

External links
 Aiden's Official Website

Victory Records albums
Aiden albums
2011 albums

redpajama_set_name: RedPajamaWikipedia


Home > Crokids Green Thumb multicolored striped shirt with a flower theme on the front. Also comes with a deep sky blue corduroy skirt.
Crokids Green Thumb multicolored striped shirt with a flower theme on the front. Also comes with a deep sky blue corduroy skirt.
Crokids Green Thumb multicolored striped shirt with a flower theme on the front. Also comes with a deep sky blue corduroy skirt. So fun and great for many occasions.


text:
English Literature » Vernacular
Definition of Vernacular
Vernacular is a literary genre that uses daily-used language in writing and speaking. It is different from written works, as they normally follow the formal variety of language. The word "vernacular" refers to writing or speaking of the public. We find the origin of vernacular literature during the Middle Ages, in various countries of Europe. In fact, Latin was the language of historical documents and religion, and ordinary people would not even speak it in Medieval Europe, like that of the Sanskrit language in India. However, the writers of vernacular language, such as Dante, Geoffrey Chaucer and Mark Twain. Dante Alighieri, diverged from this tendency by writing in the language of ordinary people.
Vernacular vs. Dialect
Vernacular is the use of ordinary, everyday, and plain language in speaking or writing, such as corn is a common name of a plant, and its scientific name is "maize," or "zea mays." Dialect is related to a particular region, geographical area, a particular social class, or an occupational group. Also, it uses a distinguished pronunciation, vocabulary, and grammar. For instance, people in Shanghai have a different pronunciation or dialect than those in Yunnan.
Examples of Vernacular in Literature
Example #1: The Canterbury Tales (By Geoffrey Chaucer)
"Whan that Aprille, with hise shoures soote,
The droghte of March hath perced to the roote
And bathed every veyne in swich licour,
Of which vertu engendred is the flour;"
In these opening lines, Chaucer has used words from the Middle English, which is a very different language. The poet has employed a vernacular style in the words such as "whan," "Aprille," "soote," "droghte," "roote," "veyne," "licour," and "flour."
Example #2: A Clockwork Orange (By Anthony Burgess)
Anthony Burgess uses vernacular language in his novel, A Clockwork Orange. Although Burgess has made the base of his novel with English, he used vernacular words from Russian, Arabic, Gypsy, and English. He formed a different language style of its own that managed to portray the state of mind of the character Alex, as well as cruelty of the world around him in which he lived.
Burgess uses words such as "eggiweg," which means "eggs" in English, describes the childlike nature of Alex, who often exhibits it. Another word is, "moloko," which means "milk blended with drugs," which shows a dark side of Alex, characterized by demonic and criminal overtones. Other terms include "baboochka," which means "old woman," and "Bog," which means "God."
Example #3: Boxy an Star (By Daren King)
"We me an Star are waitin for Boxy his head. Waitin standin in the fone box in the station of Wolfer Humpton holdin the letter what we have tapped in the number from. Tappin the number what Boxy had typed on the letter. Tappin it in on the fone pad. Tappin it makin Boxy come on the screen of the fone makin on the screen of the fone his head."
This novel is a perfect example of using futuristic vernacular. Its language is hypnotic and disturbing, unrefined and vernacular, yet effective and proper. Here the author's words are expressing brevity, directness, childlike effect, and honesty.
Example #4: Trainspotting (By Irvine Welsh)
"Suppose that ah ken aw the pros and cons, know that ah'm gaunnae huv a short life…but still want tae use smack? They won't let ye dae it. They won't let ye dae it, because it's seen as a sign ay thir ain failure. The fact that ye jist simply choose tae reject whut they huv tae offer. Choose us. Choose life. Choose mortgage payments; choose washing machines; choose cars; choose sitting oan a couch watching mind-numbing and spirit-crushing game shows…"
It takes time to know the rhythm of this book, as it is rich with Scottish vernacular, and slang words, which make its tone lilting.
Function of Vernacular
The use of vernacular is everywhere – in schools, university courses, at home, offices, in law terms, medicine, and the media. In fact, language is a starting point for any literary work, and if it is ineffective, then readers cannot get anything from the work. Vernacular is one of the literary techniques that can strike a chord with the majority of the people, makes a strong connection with them because it is closer to their everyday conversation. Also, the dialogues and phrases often reinforce the setting of a narrative, and add depth by creating a sense of realism, allowing readers to relate their real lives with a literary piece.
Houseboy: Themes
Satan as the Hero in "Paradise Lost"

redpajama_set_name: RedPajamaCommonCrawl