# Towards Denotational Semantics of AD for Higher-Order, Recursive,
Probabilistic Languages

Alexander K. Lew
MIT
&Mathieu Huot
Oxford
&Vikash K. Mansinghka
MIT

###### Abstract

Automatic differentiation (AD) aims to compute derivatives of user-defined
functions, but in Turing-complete languages, this simple specification does
not fully capture AD’s behavior: AD sometimes disagrees with the true
derivative of a differentiable program, and when AD is applied to non-
differentiable or effectful programs, it is unclear what guarantees (if any)
hold of the resulting code. We study an expressive differentiable programming
language, with piecewise-analytic primitives, higher-order functions, and
general recursion. Our main result is that even in this general setting, a
version of Lee et al. (2020)’s correctness theorem (originally proven for a
first-order language without partiality or recursion) holds: all programs
denote so-called $\omega$PAP functions, and AD computes correct intensional
derivatives of them. Mazza and Pagani (2021)’s recent theorem, that AD
disagrees with the true derivative of a differentiable recursive program at a
measure-zero set of inputs, can be derived as a straightforward corollary of
this fact. We also apply the framework to study probabilistic programs, and
recover a recent result from Mak et al. (2021) via a novel denotational
argument.

##  1 Introduction

Automatic differentiation (AD) refers to a family of techniques for
mechanically computing derivatives of user-defined functions. When applied to
straight-line programs built from differentiable primitives (without if
statements, loops, and other control flow), AD has a straightforward
justification using the chain rule. But in the presence of more expressive
programming constructs, AD is harder to reason about: some programs encode
partial or non-differentiable functions, and even when programs are
differentiable, AD can fail to compute their true derivatives at some inputs.

The aim of this work is to provide a useful mathematical model of (1) the
class of partial functions that recursive, higher-order programs built from
“AD-friendly” primitives can express, and (2) the guarantees AD makes when
applied to such programs. Our model helps answer questions like:

  * •

If AD is applied to a recursive program, does the derivative halt on the same
inputs as the original program? We show that the answer is yes, and that
restricted to this common domain of definition, AD computes an intensional
derivative of the input program (Lee et al., 2020).

  * •

Is it sound to use AD for “Jacobian determinant” corrections in probabilistic
programming languages (PPLs)? Many probabilistic programming systems use AD to
compute densities of transformed random variables (Radul and Alexeev, 2021)
and reversible-jump MCMC acceptance probabilities (Cusumano-Towner et al.,
2020). AD produces correct derivatives for almost all inputs (Mazza and
Pagani, 2021), but PPLs evaluate derivatives at inputs sampled by
probabilistic programs, which may have support entirely on Lebesgue-measure-
zero manifolds of $\mathbb{R}^{n}$. We may wonder: could PPLs, for certain
input programs, produce wrong answers with probability 1? We show that
fortunately, even when AD gives wrong answers, it does so in a way that does
not compromise the correctness of the Jacobian determinants that PPLs compute.

Our approach is inspired by Lee et al. (2020), who provided a similar
characterization of AD for a first-order language with branching (but not
recursion). Section 2 reviews their development, and gives intuition for why
recursion, higher-order functions, and partiality present additional
challenges. In Section 3, we give our solution to these challenges,
culminating in a similar result to that of Lee et al. (2020) but for a more
expressive language. We recover as a straightforward corollary the result of
Mazza and Pagani (2021) that when applied to recursive, higher-order programs,
AD fails at a measure-zero set of inputs. In Section 4, we briefly discuss the
implications of our characterization for PPLs. Indeed, reasoning about AD in
probabilistic programs is a key motivation for our work: perhaps more so than
typical differentiable programs, probabilistic programs often employ higher-
order functions and recursion as modeling tools. For example, early Church
programs used recursive, higher-order functions to express non-parametric
probabilistic grammars (Goodman et al., 2012), and modern PPLs such as Gen
(Cusumano-Towner et al., 2019) and Pyro (Bingham et al., 2019) use higher-
order primitives with custom derivatives or other specialized inference logic
to scale to larger datasets.111Higher-order recursive combinators like map and
unfold enforce conditional independence patterns that systems can exploit for
subsampling-based gradient estimates (in Pyro) or incremental computation (in
Gen). Furthermore, as mentioned above, probabilistic programs may have support
entirely on Lebesgue-measure-zero manifolds, so the intuition that AD is
correct “almost everywhere” becomes less useful as a reasoning aide—motivating
the need for more precise models of AD’s behavior.

Related work. The growing importance of AD for learning and inference has
inspired a torrent of work on the semantics of differentiable languages,
summarized in Table 1. We build on existing denotational approaches,
particularly those of Huot et al. (2020) and Vákár (2020), but incorporate
ideas from Lee et al. (2020) to handle piecewise functions, and Vákár et al.
(2019) to model probabilistic programs. Mazza and Pagani (2021) consider a
language equally expressive as our deterministic fragment; we give a novel and
complementary denotational account (their approach is operational). Mak et al.
(2021) do not consider AD, but do give an operational semantics for a Turing-
complete PPL, and tools for reasoning about differentiability of density
functions.

Semantic Framework | Piecewise | Recursion | Higher-Order | Approach | AD | PPL
---|---|---|---|---|---|---
Huot et al. (2020) |  |  | ✔ | Denotational | ✔ |
Vákár (2020) |  | ✔ | ✔ | Denotational | ✔ |
Lee et al. (2020) | ✔ |  |  | Denotational | ✔ |
Abadi and Plotkin (2020) |  | ✔ |  | Both | ✔ |
Mazza and Pagani (2021) | ✔ | ✔ | ✔ | Operational | ✔ |
Mak et al. (2021) | ✔ | ✔ | ✔ | Operational |  | ✔
Ours | ✔ | ✔ | ✔ | Denotational | ✔ | ✔
Table 1: Approaches to reasoning about differentiable programming languages
and AD. “Piecewise”: the semantics accounts for total but discontinuous
functions such as $<$ and $==$ for reals. “PPL”: the same semantic framework
can be used to reason about probabilistic programs and the differentiable
properties of deterministic ones. “AD”: the framework supports reasoning about
soundness of AD (NB: we handle only forward-mode, whereas others handle
reverse-mode or both).

##  2 Background: PAP functions and intensional derivatives

In this section, we recall Lee et al. (2020)’s approach to understanding a
simple differentiable programming language, and describe the key challenges
for extending their approach to a more complex language, with partiality,
recursion, and higher-order functions.

###  2.1 A First-Order Differentiable Programming Language

Lee et al. (2020) consider a first-order language with real number constants
$c$, primitive real-valued functions
$f:\mathbb{R}^{N_{f}}\rightarrow\mathbb{R}$, as well as an if construct for
branching: $e::=c\mid x_{i}\mid
f(e_{1},...,e_{n})\mid\texttt{if}\,(e_{1}>0)\,e_{2}\,e_{3}$. Expressions $e$
in the language denote functions $\llbracket
e\rrbracket:\mathbb{R}^{n}\rightarrow\mathbb{R}$ of an input vector
$\mathbf{x}\in\mathbb{R}^{n}$ (for some $n$). We have $\llbracket
c\rrbracket\mathbf{x}=c$, $\llbracket
x_{i}\rrbracket\mathbf{x}=\mathbf{x}[i]$, $\llbracket
f(e_{1},\dots,e_{n})\rrbracket\mathbf{x}=f(\llbracket
e_{1}\rrbracket\mathbf{x},\dots,\llbracket e_{n}\rrbracket\mathbf{x})$, and
$\llbracket\texttt{if }(e_{1}>0)\,e_{2}\,e_{3}\rrbracket\mathbf{x}=[\llbracket
e_{1}\rrbracket\mathbf{x}>0]\cdot(\llbracket
e_{2}\rrbracket\mathbf{x})+[\llbracket e_{1}\rrbracket\mathbf{x}\leq
0]\cdot(\llbracket e_{3}\rrbracket\mathbf{x})$.

A key insight of Lee et al. (2020) is that if the primitive functions $f$ are
piecewise analytic under analytic partition, or PAP, then so is any program
written in the language. They define PAP functions in stages, starting with
the concept of a piecewise representation of a function $f$:

Definition. Let $U\subseteq\mathbb{R}^{n}$, $V\subseteq\mathbb{R}^{m}$, and
$f:U\rightarrow V$. A piecewise representation of $f$ is a countable family
$\\{(A_{i},f_{i})\\}_{i\in I}$ such that: (1) the sets $A_{i}$ form a
partition of $U$; (2) each ${f_{i}:U_{i}\rightarrow\mathbb{R}^{m}}$ is defined
on an open domain $U_{i}\supseteq A_{i}$; and (3) when $x\in A_{i}$,
$f_{i}(x)=f(x)$.

Figure 1: Lee et al. (2020)’s denotational characterization of AD, which we
extend. For a simple differentiable programming language, they define a class
of functions (PAP functions) expressive enough to interpret all programs in
the language. Not all PAP functions are differentiable, but Lee et al. (2020)
propose a relaxed notion of derivatives, called intensional derivatives, that
always exist for PAP functions, and show that AD yields intensional
derivatives. We extend their argument to handle recursion and higher-order
functions, by defining a generalized class of $\omega$PAP functions and a
corresponding generalization of the notion of intensional derivative.

The PAP functions are those with analytic piecewise representations:

Definition. If the Taylor series of a smooth function $f$ converges pointwise
to $f$ in a neighborhood around $x$, we say $f$ is analytic at $x$. An
analytic function is analytic everywhere in its domain. We call a set
$A\subseteq\mathbb{R}^{n}$ an analytic set iff there exist finite collections
$\\{g^{+}_{i}\\}_{i\in I}$ and $\\{g^{-}_{j}\\}_{j\in J}$ of analytic
functions into $\mathbb{R}$, with open domains $X^{+}_{i}$ and $X^{-}_{j}$,
such that
$A=\\{x\in(\bigcap_{i}X^{+}_{i})\cap(\bigcap_{j}X^{-}_{j})\mid\forall
i.g^{+}_{i}(x)>0\wedge\forall j.g^{-}_{j}\leq 0\\}$ (i.e., analytic sets are
subsets of open sets carved out using a finite number of analytic
inequalities.)

Definition. We say $f$ is piecewise analytic under analytic partition (PAP) if
there exists a piecewise representation $\\{(A_{i},f_{i})\\}_{i\in I}$ of $f$
such that the $A_{i}$ are analytic sets and the $f_{i}$ are analytic
functions. We call such a representation a PAP representation.

Proposition (Lee et al. 2020). Constant functions and projection functions are
PAP. Supposing $f:\mathbb{R}^{n}\rightarrow\mathbb{R}$ is PAP, and $\llbracket
e_{1}\rrbracket,\dots,\llbracket e_{n}\rrbracket$ are all PAP, $\llbracket
f(e_{1},\dots,e_{n})\rrbracket$ and $\llbracket\texttt{if
}(e_{1}>0)\,e_{2}\,e_{3}\rrbracket$ are also PAP. Therefore, by induction, all
expressions $e$ denote PAP functions $\llbracket e\rrbracket$.

PAP functions are not necessarily differentiable. But Lee et al. (2020) define
intensional derivatives, which do always exist for PAP functions (though
unlike traditional derivatives, they are not unique):

Definition. A function $g$ is an intensional derivative of a PAP function $f$
if there exists a PAP representation $\\{(A_{i},f_{i})\\}_{i\in I}$ of $f$
such that when $x\in A_{i}$, $g(x)=f_{i}^{\prime}(x)$.

Lee et al. (2020) then give a standard AD algorithm for their language and
show that, when applied to an expression $e$, it is guaranteed to yield some
intensional derivative of $\llbracket e\rrbracket$ as long as each primitive
$f$ comes equipped with an intensional derivative. Essentially, this proof is
based on an analogue to the chain rule for intensional derivatives. The result
is depicted schematically in Figure 1.

###  2.2 Challenges: Partiality, Higher-Order Functions, and Recursion

Figure 2: This program can be seen as a piecewise function, constantly $\bot$
on the $\frac{1}{3}$-Cantor set and $x^{2}$ elsewhere in $(0,1)$. But the
$\frac{1}{3}$-Cantor set is not expressible as a countable union of analytic
sets, and so this representation is not PAP.

Can a similar analysis be carried out for a more complex language, with
higher-order and recursive functions? One challenge is that as defined above,
only total, first-order functions can be PAP: unless we can generalize the
definition to cover partial and higher-order functions, we cannot reproduce
the inductive proof that PAP functions are closed under the programming
language’s constructs. This is a roadblock even if we care only about
differentiating first-order, total programs. To see why, recall that we
required primitives $f$ to be PAP in the section above. What alternative
requirements should we place on partial or higher-order primitives, to ensure
that first-order programs built from them will be PAP? How should these
primitives’ built-in intensional derivatives behave?

These are non-trivial challenges, and it is possible to formulate reasonable-
sounding solutions that turn out not to work. For example, we might
hypothesize that partial functions $f:U\rightharpoonup V$ definable using
recursion are almost PAP: perhaps there still exists an analytic partition
$\\{A_{i}\\}_{i\in I}$ of $U$, and analytic functions $\\{f_{j}\\}_{j\in J}$
for some subset of indices $J\subseteq I$, such that $f$ is defined exactly on
$\bigcup_{j\in J}A_{j}$ and $f(x)=f_{j}(x)$ whenever $x\in A_{j}$. But
consider the program cantor in Figure 2. It denotes a partial function that is
undefined outside of $[0,1]$, and also on the $\frac{1}{3}$-Cantor set. This
region cannot be expressed as a countable union of analytic sets $\cup_{i\in
I\setminus J}A_{i}$. Therefore, this candidate notion of PAP partial function
is too restrictive: some recursive programs do not satisfy it.

##  3 $\omega$PAP Semantics

In this section, we present an expressive differentiable programming language,
with higher-order functions, branching, and general recursion. We then
generalize the definitions of PAP functions and intensional derivatives to
include higher-order and partial functions, and show that: (1) all programs in
our language denote (this generalized variant of) PAP functions, and (2) a
standard forward-mode AD algorithm computes valid intensional derivatives.

###  3.1 A Higher-Order, Recursive Differentiable Language

Syntax. Consider a language with types
$\tau::=\mathbb{R}^{k}\mid\tau_{1}\times\tau_{2}\mid\tau_{1}\rightarrow\tau_{2}$,
and terms $e::=x\mid c\mid e_{1}\,e_{2}\mid\texttt{if
}(e_{1}>0)\,e_{2}\,e_{3}\mid\lambda x:\tau.e\mid\mu
f:\tau_{1}\rightarrow\tau_{2}.e$. Here, $c$ ranges over constants of any type,
including constant numeric literals such as 3 and $\pi$, as well as primitive
functions such as + and sin. We write $(e_{1},e_{2})$ as sugar for
$\texttt{pair}_{\tau_{1},\tau_{2}}\,e_{1}\,e_{2}$, where
$\texttt{pair}_{\tau_{1},\tau_{2}}:\tau_{1}\rightarrow\tau_{2}\rightarrow\tau_{1}\times\tau_{2}$
is a constant for constructing tuples. The $\mu$ expression creates a
recursive function of type $\tau_{1}\rightarrow\tau_{2}$, binding the name $f$
for the recursive call. For example, a version of the factorial function that
works on natural number inputs is $\mu
f:\mathbb{R}\rightarrow\mathbb{R}.(\lambda x:\mathbb{R}.\texttt{if
}(x>0)\,\,(x*f(x-1))\,\,1)$.

Semantics of types. For each type $\tau$ we choose a set
$\llbracket\tau\rrbracket$ of values. We have
$\llbracket\mathbb{R}^{k}\rrbracket=\mathbb{R}^{k}$ and
$\llbracket\tau_{1}\times\tau_{2}\rrbracket=\llbracket\tau_{1}\rrbracket\times\llbracket\tau_{2}\rrbracket$.
Function types are slightly more complicated because we wish to represent
partial functions. Given a set $X$, we define $X_{\bot}=\\{\uparrow x\mid x\in
X\\}\cup\\{\bot\\}$. (The tag $\uparrow$ is useful to avoid ambiguity when
$\bot$ is already a member of $X$: then $X_{\bot}$ contains as distinct
elements the newly adjoined $\bot$ and the representation $\uparrow\bot$ of
the original $\bot$ from $X$.) Using this construction, we define
$\llbracket\tau_{1}\rightarrow\tau_{2}\rrbracket=\llbracket\tau_{1}\rrbracket\rightarrow\llbracket\tau_{2}\rrbracket_{\bot}$:
we represent partial functions returning $\tau_{2}$ as total functions into
$\llbracket\tau_{2}\rrbracket_{\bot}$.

Semantics of terms. We interpret expressions of type $\tau$ as functions from
environments $\gamma$ (mapping variables $x$ to their values $\gamma[x]$) to
$\llbracket\tau\rrbracket_{\bot}$. If $a\in\llbracket\tau\rrbracket_{\bot}$
and $b\in\llbracket\tau\rightarrow\sigma\rrbracket$, we write (as a
mathematical expression, not an object language expression) $a\texttt{>>=}b$
to mean $\bot$ if $a=\bot$, and $b(x)$ if $a=\,\uparrow x$. Using this
notation, we can define the interpretation of each construct in our language.
We define: $\llbracket c\rrbracket\gamma=\uparrow c$, $\llbracket
x\rrbracket\gamma=\uparrow(\gamma[x])$, $\llbracket
e_{1}\,e_{2}\rrbracket\gamma=(\llbracket
e_{1}\rrbracket\gamma)\texttt{>>=}(\lambda f.\llbracket
e_{2}\rrbracket\gamma\texttt{>>=}f)$, $\llbracket\lambda
x.e\rrbracket\gamma=\uparrow\lambda v.\llbracket e\rrbracket(\gamma[x\mapsto
v])$, and $\llbracket\texttt{if
}(e_{1}>0)\,e_{2}\,e_{3}\rrbracket\gamma=\llbracket
e_{1}\rrbracket\gamma\texttt{>>=}\lambda x.[x>0\mapsto\llbracket
e_{2}\rrbracket\gamma,x\leq 0\mapsto\llbracket e_{3}\rrbracket\gamma]$. To
interpret recursion, we use the standard domain-theoretic approach. We first
define partial orders $\preceq_{\tau}$ inductively for each type $\tau$: we
define $x\preceq_{\mathbb{R}^{k}}y\iff x=y$,
$(x_{1},x_{2})\preceq_{\tau_{1}\times\tau_{2}}(y_{1},y_{2})\iff
x_{1}\preceq_{\tau_{1}}y_{1}\wedge x_{2}\preceq_{\tau_{2}}y_{2}$, and
$f\preceq_{\tau\rightarrow\sigma}g\iff\forall
x\in\llbracket\tau\rrbracket,f(x)\preceq^{\bot}_{\sigma}g(x)$. (The relation
$x\preceq^{\bot}_{\tau}y$ holds when $x=\bot$ or when $x=\uparrow a$,
$y=\uparrow b$, and $a\preceq_{\tau}b$ for some
$a,b\in\llbracket\tau\rrbracket$.) Intuitively, $x\preceq y$ if $y$ is “at
least as defined” as $x$. For the types $\tau$ in our language, given an
infinite non-decreasing sequence $x_{1}\preceq_{\tau}x_{2}\preceq_{\tau}\dots$
of values, there exists a least upper bound $\vee_{i\in\mathbb{N}}x_{i}$. If
the primitives in our language are Scott-continuous (monotone with respect to
$\preceq$, with the property that $\bigvee_{i}f(x_{i})=f(\bigvee_{i}x_{i})$),
we can interpret recursion: $\llbracket\mu f:\tau\rightarrow\sigma.\lambda
x.e\rrbracket\gamma=\uparrow\bigvee_{i\in\mathbb{N}}f_{i}$, where
$f_{0}=\lambda x.\bot$ and $f_{i}=\lambda v.\llbracket
e\rrbracket(\gamma[x\mapsto v,f\mapsto f_{i-1}])$.

###  3.2 $\omega$PAP functions

We have given a standard denotational semantics to our language, interpreting
terms as partial functions. We now generalize the notion of a PAP function to
that of an $\omega$PAP partial function, and show that if all the primitives
are $\omega$PAP, so is any program. The definition relies on the choice, for
each type $\tau$, of a set of well-behaved or “PAP-like” functions from
Euclidean space into $\llbracket\tau\rrbracket$, called the $\omega$PAP
diffeology of $\tau$, by analogy with diffeological spaces (Iglesias-Zemmour,
2013).

Definition. A set $U\subseteq\mathbb{R}^{n}$ is c-analytic if it is a
countable union of analytic sets.

Definition. Let $\tau$ be a type. An $\omega$PAP diffeology
$\mathcal{P}_{\tau}$ for $\tau$ assigns to each c-analytic set $U$ a set
$\mathcal{P}^{U}_{\tau}$ of PAP plots in $\tau$, functions from $U$ into
$\llbracket\tau\rrbracket$ satisfying the following closure properties:

  * •

(Constants.) All constant functions are plots in $\tau$.

  * •

(Closure under PAP precomposition.) If $V\subseteq\mathbb{R}^{m}$ is a
c-analytic set, and $f:V\rightarrow U$ is PAP, then $\phi\circ f$ is a plot in
$\tau$ if $\phi:U\rightarrow\llbracket\tau\rrbracket$ is.

  * •

(Closure under piecewise gluing.) If
$\phi:U\rightarrow\llbracket\tau\rrbracket$ is such that the restriction
$\phi|_{A_{i}}:A_{i}\rightarrow\llbracket\tau\rrbracket$ is a plot in $\tau$
for each $A_{i}$ in some c-analytic partition of $U$, then $\phi$ is a plot in
$\tau$.

  * •

(Closure under least upper bounds.) Suppose $\phi_{1},\phi_{2},\dots$ is a
sequence of plots in $\tau$ such that for all $x\in U$,
$\phi_{i}(x)\preceq_{\tau}\phi_{i+1}(x)$. Then
$\bigvee_{i\in\mathbb{N}}\phi_{i}=\lambda
x.\bigvee_{i\in\mathbb{N}}\phi_{i}(x)$ is a plot.

Choosing $\omega$PAP diffeologies. We set $\mathcal{P}^{U}_{\mathbb{R}^{k}}$
to be all PAP functions from $U$ to $\mathbb{R}^{k}$. (These trivially satisfy
condition 4 above, since $\preceq_{\mathbb{R}^{k}}$ only relates equal
vectors.) For $\tau_{1}\times\tau_{2}$, we include
$f\in\mathcal{P}^{U}_{\tau_{1}\times\tau_{2}}$ iff
$f\circ\pi_{1}\in\mathcal{P}^{U}_{\tau_{1}}$ and
$f\circ\pi_{2}\in\mathcal{P}^{U}_{\tau_{2}}$. Function types are more
interesting. A function
$f:U\rightarrow\llbracket\tau_{1}\rightarrow\tau_{2}\rrbracket$ is a plot if,
for all PAP functions $\phi_{1}:V\rightarrow U$ and plots
$\phi_{2}\in\mathcal{P}^{V}_{\tau_{1}}$, the function $\lambda
v.f(\phi_{1}(v))(\phi_{2}(v))$ is defined (i.e., not $\bot$) on a c-analytic
subset of $V$, restricted to which it is a plot in $\tau_{2}$.

Definition. Let $\tau_{1}$ and $\tau_{2}$ be types. Then a partial $\omega$PAP
function $f:\tau_{1}\rightarrow\tau_{2}$ is a Scott-continuous function from
$\llbracket\tau_{1}\rrbracket$ to $\llbracket\tau_{2}\rrbracket_{\bot}$, such
that if $\phi\in\mathcal{P}^{U}_{\tau_{1}}$, $f\circ\phi$ is defined on a
c-analytic subset of $U$, restricted to which it is a plot in
$\tau_{2}$.222For readers familiar with category theory, the $\omega$PAP
spaces ($\omega$cpos $(X,\preceq_{X})$ equipped with $\omega$PAP diffeologies
$\mathcal{P}_{X}$) and the total $\omega$PAP functions form a CCC, enriched
over $\omega$Cpo. In fact, $\omega$PAP is equivalent to a category of models
of an essentially algebraic theory, which means it also has all small limits
and colimits. It can also be seen as a category of concrete sheaves valued in
$\omega$Cpo, making it a Grothendieck quasi-topos. We revise our earlier
interprtation of $\llbracket\tau_{1}\rightarrow\tau_{2}\rrbracket$ to include
only the partial $\omega$PAP functions.

We note that under this definition, a total function
$f:\mathbb{R}^{n}\rightarrow\mathbb{R}^{m}$ is $\omega$PAP if and only if it
is PAP. The generalization becomes apparent only when working with function
types and partiality.

Proposition. If every primitive function is $\omega$PAP, then every expression
$e$ of type $\tau$ with free variables of type $\tau_{1},\dots,\tau_{n}$
denotes a partial $\omega$PAP function
$f:\tau_{1}\times\dots\times\tau_{n}\rightarrow\tau$. In particular, programs
that denote total functions from $\mathbb{R}^{n}$ to $\mathbb{R}^{m}$, even if
they use recursion and higher-order functions internally, always denote
(ordinary) PAP functions.

###  3.3 Automatic Differentiation

Implementation of AD. We now describe a standard forward-mode AD macro,
adapted from Huot et al. (2020) and Vákár (2020). For each type $\tau$, we
define a “dual number type” $\mathcal{D}\llbracket\tau\rrbracket$:
$\mathcal{D}\llbracket\mathbb{R}^{k}\rrbracket=\mathbb{R}^{k}\times\mathbb{R}^{k}$,
$\mathcal{D}\llbracket\tau_{1}\times\tau_{2}\rrbracket=\mathcal{D}\llbracket\tau_{1}\rrbracket\times\mathcal{D}\llbracket\tau_{2}\rrbracket$,
and
$\mathcal{D}\llbracket\tau_{1}\rightarrow\tau_{2}\rrbracket=\mathcal{D}\llbracket\tau_{1}\rrbracket\rightarrow\mathcal{D}\llbracket\tau_{2}\rrbracket$.
The AD macro translates terms of type $\tau$ into terms of type
$\mathcal{D}\llbracket\tau\rrbracket$: $\mathcal{D}\llbracket x\rrbracket=x$,
$\mathcal{D}\llbracket e_{1}\,e_{2}\rrbracket=\mathcal{D}\llbracket
e_{1}\rrbracket\,\,\mathcal{D}\llbracket e_{2}\rrbracket$,
$\mathcal{D}\llbracket\texttt{if }(e_{1}>0)\,e_{2}\,e_{3}\rrbracket=\texttt{if
}(\pi_{1}(\mathcal{D}\llbracket e_{1}\rrbracket)>0)\,\,\mathcal{D}\llbracket
e_{2}\rrbracket\,\,\mathcal{D}\llbracket e_{3}\rrbracket$,
$\mathcal{D}\llbracket\lambda x:\tau.e\rrbracket=\lambda
x:\mathcal{D}\llbracket\tau\rrbracket.\mathcal{D}\llbracket e\rrbracket$, and
$\mathcal{D}\llbracket\mu f:\tau\rightarrow\sigma.e\rrbracket=\mu
f:\mathcal{D}\llbracket\tau\rrbracket\rightarrow\mathcal{D}\llbracket\sigma\rrbracket.\mathcal{D}\llbracket
e\rrbracket$. Constants $c$ come equipped with their own translations
$c_{\mathcal{D}}$: $\mathcal{D}\llbracket c\rrbracket=c_{\mathcal{D}}$. For
constants of type $\mathbb{R}^{k}$, $c_{\mathcal{D}}=(c,\mathbf{0})$, but for
functions, $c_{\mathcal{D}}$ encodes a primitive’s intensional derivative. For
example, when $c:\mathbb{R}\rightarrow\mathbb{R}$, we require that
$c_{\mathcal{D}}:\mathbb{R}\times\mathbb{R}\rightarrow\mathbb{R}\times\mathbb{R}$
be such that, for any PAP function $f:\mathbb{R}\rightarrow\mathbb{R}$ with
intensional derivative $g$, there is an intensional derivative $h$ of $c\circ
f$ such that $c_{\mathcal{D}}\circ\langle f,g\rangle=\lambda x.((c\circ
f)(x),h(x))$. The constant log, for example, could have
$\texttt{log}_{\mathcal{D}}((x,v))=(\log x,\frac{v}{x})$.

Behavior / Correctness of AD. For each type $\tau$, we define a family of
relations
$S^{U}_{\tau}\subseteq\mathcal{P}^{U}_{\tau}\times\mathcal{P}^{U}_{\mathcal{D}\llbracket\tau\rrbracket}$,
indexed by the c-analytic sets $U$. The basic idea is that if $(f,g)\in
S^{U}_{\tau}$, then $g$ is a correct “intensional dual number representation”
of $f$. Since $S^{U}_{\tau}$ is a relation, there may be multiple such $g$’s,
just as how in Lee et al. (2020)’s definition, a single PAP function may have
multiple valid intensional derivatives.

For $\tau=\mathbb{R}^{k}$, we build directly on Lee et al. (2020)’s notion of
intensional derivative: $f$ and $g$ are related in $S^{U}_{\mathbb{R}^{k}}$ if
and only if, for all PAP functions $h:V\rightarrow U$ and intensional
derivatives $h^{\prime}$ of $h$, there is some intensional derivative $G$ of
$f\circ h$ such that for all $v\in V$, $g((h(v),h^{\prime}(v)))=((f\circ
h)(v),G(v))$. For other types, we use the Artin gluing approach of Vákár
(2020) to derive canonical definitions of $S_{\tau}$ for products and function
types that make the following result possible:

Proposition. Suppose $(\phi,\phi^{\prime})\in S^{U}_{\tau}$, and that
$e:\sigma$ has a single free variable $x:\tau$. Then $(\llbracket
e\rrbracket\circ\phi,\llbracket\mathcal{D}\llbracket
e\rrbracket\rrbracket\circ\phi^{\prime})$ is defined on the same c-analytic
subset $V\subseteq U$, and restricted to $V$, is in $S^{V}_{\sigma}$.

Specializing to the case where $\tau$ and $\sigma$ are $\mathbb{R}^{n}$ and
$\mathbb{R}^{m}$, this implies that AD gives sound intensional derivatives
even when programs use recursion and higher-order functions. Intensional
derivatives agree with derivatives almost everywhere, so this implies the
result of Mazza and Pagani (2021).

##  4 Applications to Probabilistic Programming

In this section, we briefly describe some applications of the $\omega$PAP
semantics to probabilistic languages. First, we give an example of applying
our framework to reason about soundness for AD-powered PPL features. Second,
we recover a recent result of Mak et al. (2021) via a novel denotational
argument.

AD for sound change-of-variables corrections. Consider a PPL that represents
primitive distributions by a pair of a sampler $\mu$ and a density $\rho$.
Some systems support automatically generating a new sampler and density,
$f_{*}\mu$ and $\rho_{f}$, for the pushforward of $\mu$ by a user-specified
deterministic bijection $f$. Such systems compute the density $\rho_{f}$ using
a change-of-variables formula, which relies on $f$’s Jacobian (Radul and
Alexeev, 2021). We show in Appendix A.2 that such algorithms are sound even
when: (1) $f$ is not differentiable, but rather PAP; and (2) we use not $f$’s
Jacobian but any intensional Jacobian of $f$. This may be surprising, because
intensional Jacobians can disagree with true Jacobians on Lebesgue-measure-
zero sets of inputs, and the support of $\mu$ may lie entirely within such a
set. Indeed, there are samplers $\mu$ and programs $f$ for which AD’s
Jacobians are wrong everywhere within $\mu$’s support. Our result shows that
this does not matter: intensional Jacobians are “wrong in the right ways,”
yielding correct densities $\rho_{f}$ even when the derivatives themselves are
incorrect.

Trace densities of probabilistic programs are $\omega$PAP. Now consider
extending our language with constructs for probabilistic programming: a type
$\mathcal{M}\,\tau$ of $\tau$-valued probabilistic programs, and constructs
$\mathbf{return}_{\tau}:\tau\rightarrow\mathcal{M}\,\tau$,
$\mathbf{sample}:\mathcal{M}\mathbb{R}$,
$\mathbf{score}:[0,\infty)\rightarrow\mathcal{M}\,\mathbf{1}$, and
$\mathbf{do}\,\\{x\leftarrow t;s\\}:\mathcal{M}\,\sigma$ (where
$t:\mathcal{M}\,\tau$ and $s:\mathcal{M}\,\sigma$ in environments with
$x:\tau$). Some PPLs use probabilistic programs only to specify density
functions, for downstream use by inference algorithms like Hamiltonian Monte
Carlo. To reason about such languages, we can interpret $\mathcal{M}\,\tau$ as
comprising deterministic functions computing values and densities of traces.
More precisely, let
$\llbracket\mathcal{M}\,\tau\rrbracket=\llbracket\sqcup_{i\in\mathbb{N}}\mathbb{R}^{i}\rightarrow\textbf{Maybe
}\tau\times\mathbb{R}\times\sqcup_{i\in\mathbb{N}}\mathbb{R}^{i}\rrbracket$:333This
definition includes two new types: $\textbf{Maybe }\,\tau$ and
$\sqcup_{i\in\mathbb{N}}\mathbb{R}^{i}$. The $\textbf{Maybe }\,\tau$ type has
as elements $\textbf{Just}\,x$, where $x\in\mathbb{\tau}$, and Nothing. We
take $\textbf{Just}\,x\preceq\textbf{Just}\,y$ if $x\preceq y$, but Nothing
and Just values are not comparable. A function $\phi$ is a plot in
$\textbf{Maybe }\tau$ if $\phi^{-1}(\\{\textbf{Just}\,x\mid
x\in\llbracket\tau\rrbracket\\})$ and $\phi^{-1}(\\{\textbf{Nothing}\\})$ are
both c-analytic sets, restricted to each of which $\phi$ is a plot. Similarly,
for the list type, a function $\phi$ is a plot if, for each length
$i\in\mathbb{N}$, the preimage of lists of length $i$ is c-analytic in $U$,
and the restriction of $\phi$ to each preimage is a plot in $\mathbb{R}^{i}$.
the meaning of a probabilistic program is a function mapping lists of real-
valued random samples, called traces, to: (1) the output values they possibly
induce in $\llbracket\tau\rrbracket$, (2) a density in $[0,\infty)$, and (3) a
remainder of the trace, containing any samples not yet used. We can then
define $\llbracket\textbf{return}_{\tau}\rrbracket=\llbracket\lambda
x.\lambda\textit{trace}.(\textbf{Just }x,1.0,\textit{trace})\rrbracket$,
$\llbracket\textbf{sample}\rrbracket=\llbracket\lambda\textit{trace}.(\texttt{head}\,\textit{trace},\texttt{if
}(\texttt{length
}\textit{trace}>0)\,(1.0)\,(0.0),\texttt{tail}\,\textit{trace})\rrbracket$,
$\llbracket\textbf{score}\rrbracket=\llbracket\lambda
w.\lambda\textit{trace}.(\textbf{Just
}\,\langle\rangle,w,\textit{trace})\rrbracket$, and $\llbracket\textbf{do
}\\{x\leftarrow t;s\\}\rrbracket=\llbracket\lambda\textit{trace}.\textbf{let
}(x_{?},w,r)=t\,\textit{trace}\textbf{ in
}\texttt{case}_{\textbf{Maybe}}\,x_{?}\,(\textbf{Nothing},0.0,\textit{trace})\,(\lambda
x.\textbf{ let }(y_{?},v,u)=(s)\,r\,\textbf{ in
}(y_{?},w*v,u))\rrbracket$.444Depending on whether its first argument is
Nothing, $\texttt{case}_{\textbf{Maybe}}$ either returns the default value
passed as the second argument, or calls the third argument on the value
wrapped inside the Just.

Let $e:\mathcal{M}\,\tau$ be a closed probabilistic program. Suppose that on
all but a Lebesgue-measure-zero set of traces, $\llbracket
e\rrbracket(\textit{trace})$ is defined (i.e., not $\bot$—although the first
component of the tuple it returns may be Nothing, e.g. if the input trace does
not provide enough randomness to simulate the entire program).555This
condition is implied by almost-sure termination, but is weaker in general. For
example, there are probabilistic context-free grammars with infinite expected
output lengths, i.e., without almost-sure termination. But considered as
deterministic functions of traces (as we do in this section), these grammars
halt on all inputs. On traces where $\llbracket e\rrbracket$ is defined, the
following density function is also defined:
$\llbracket\lambda\textit{trace}.\textbf{let
}\,(x_{?},w,r)=e\,\textit{trace}\textbf{ in if }(\texttt{length
}\,r>0)\,\,(0.0)\,\,(w)\rrbracket$. Furthermore, as a function in the
language, this density function is $\omega$PAP. Therefore, excepting the
measure-zero set on which it is undefined, for each trace length, the density
function is PAP in the ordinary sense—and therefore almost-everywhere
differentiable. This result was recently proved using an operational semantics
argument by Mak et al. (2021). The PAP perspective helps reason denotationally
about such questions, and validates that AD on trace density functions in PPLs
produces a.e.-correct derivatives.

Future work. Besides the “trace-based” approach described above, we are
working on an extensional monad of measures similar to that of Vákár et al.
(2019), but in the $\omega$PAP category. This could yield a semantics in which
results from measure theory and the differential calculus can be combined, to
establish the correctness of AD-powered PPL features like automated involutive
MCMC (Cusumano-Towner et al., 2020). However, more work may be needed to
account for the variational inference, which uses gradients of expectations.
In our current formulation of the measure monad, the real expectation operator
$\mathbb{E}_{\mathbb{R}}:\mathcal{M\,\tau}\rightarrow(\tau\rightarrow\mathbb{R})\rightarrow\mathbb{R}$
is not $\omega$PAP, and so we cannot reason in general about when the
expectation of an $\omega$PAP function under a probabilistic program will be
differentiable.

## References

  * Abadi and Plotkin [2020] Martín Abadi and Gordon D Plotkin.  A simple differentiable programming language.  In _Proc. POPL 2020_. ACM, 2020.
  * Bingham et al. [2019] Eli Bingham, Jonathan P Chen, Martin Jankowiak, Fritz Obermeyer, Neeraj Pradhan, Theofanis Karaletsos, Rohit Singh, Paul Szerlip, Paul Horsfall, and Noah D Goodman.  Pyro: Deep universal probabilistic programming.  _The Journal of Machine Learning Research_ , 20(1):973–978, 2019.
  * Cusumano-Towner et al. [2020] Marco Cusumano-Towner, Alexander K Lew, and Vikash K Mansinghka.  Automating involutive mcmc using probabilistic and differentiable programming.  _arXiv preprint arXiv:2007.09871_ , 2020.
  * Cusumano-Towner et al. [2019] Marco F Cusumano-Towner, Feras A Saad, Alexander K Lew, and Vikash K Mansinghka.  Gen: a general-purpose probabilistic programming system with programmable inference.  In _Proceedings of the 40th acm sigplan conference on programming language design and implementation_ , pages 221–236, 2019.
  * Goodman et al. [2012] Noah Goodman, Vikash Mansinghka, Daniel M Roy, Keith Bonawitz, and Joshua B Tenenbaum.  Church: a language for generative models.  _arXiv preprint arXiv:1206.3255_ , 2012.
  * Huot et al. [2020] Mathieu Huot, Sam Staton, and Matthijs Vákár.  Correctness of automatic differentiation via diffeologies and categorical gluing.  _arXiv preprint arXiv:2001.02209_ , 2020.
  * Iglesias-Zemmour [2013] Patrick Iglesias-Zemmour.  _Diffeology_ , volume 185.  American Mathematical Soc., 2013.
  * Lee et al. [2020] Wonyeol Lee, Hangyeol Yu, Xavier Rival, and Hongseok Yang.  On correctness of automatic differentiation for non-differentiable functions.  _arXiv preprint arXiv:2006.06903_ , 2020.
  * Mak et al. [2021] Carol Mak, C-H Luke Ong, Hugo Paquet, and Dominik Wagner.  Densities of almost surely terminating probabilistic programs are differentiable almost everywhere.  _Programming Languages and Systems_ , 12648:432, 2021.
  * Mazza and Pagani [2021] Damiano Mazza and Michele Pagani.  Automatic differentiation in pcf.  _Proceedings of the ACM on Programming Languages_ , 5(POPL):1–27, 2021.
  * Radul and Alexeev [2021] Alexey Radul and Boris Alexeev.  The base measure problem and its solution.  In _International Conference on Artificial Intelligence and Statistics_ , pages 3583–3591. PMLR, 2021.
  * Vákár [2020] Matthijs Vákár.  Denotational correctness of foward-mode automatic differentiation for iteration and recursion.  _arXiv preprint arXiv:2007.05282_ , 2020.
  * Vákár et al. [2019] Matthijs Vákár, Ohad Kammar, and Sam Staton.  A domain theory for statistical probabilistic programming.  _Proceedings of the ACM on Programming Languages_ , 3(POPL):36, 2019.

##  Appendix A Appendix

###  A.1 Type system of the language

Figure 3 shows the type system of our language from Section 3; all rules are
standard.

$\Gamma\vdash x:\tau$
---

$(x:\tau\in\Gamma)$ $\Gamma\vdash c:\tau$ $(c\in\mathcal{C}_{\tau})$
$\Gamma,x:\tau_{1}\vdash e:\tau_{2}$ $\Gamma\vdash\lambda
x:\tau_{1}.e:\tau_{1}\to\tau_{2}$

$\Gamma\vdash e_{1}:\tau_{1}\to\tau_{2}$ $\Gamma\vdash e_{2}:\tau_{1}$
---
$\Gamma\vdash e_{1}e_{2}:\tau_{2}$

$\Gamma\vdash e_{1}:\mathbb{R}$ $\Gamma\vdash e_{2}:\tau$ $\Gamma\vdash
e_{3}:\tau$
---
$\Gamma\vdash\texttt{if}\,(e_{1}>0)\,e_{2}\,e_{3}:\tau$

$\Gamma,f:\tau_{1}\to\tau_{2}\vdash e:\tau_{1}\to\tau_{2}$
---
$\Gamma\vdash\mu f:\tau_{1}\to\tau_{2}.e:\tau_{1}\to\tau_{2}$

Figure 3: Type system of our language.

###  A.2 Argument for the soundness of change-of-variables calculations with
intensional derivatives

Let $\mu$ be a probability distribution over (possibly some sub-manifold of)
$\mathbb{R}^{n}$, with density $\rho$ with respect to a reference measure
$B_{\mu}$. Suppose we have a “change-of-variables” algorithm that computes
densities $\rho_{f}$, with respect to a reference measure $B_{f}$, of
pushforwards $f_{*}\mu$ of $\mu$ by differentiable bijections $f$. The
algorithm may use the true derivatives of $f$. We show that such an algorithm
also works when $f$ is PAP, if it is given intensional derivatives of $f$
instead of true ones.

Let $f$ be a PAP bijection from $\mathbb{R}^{k}$ to $\mathbb{R}^{m}$ (more
precisely, it need only be bijective when restricted to the support of $\mu$).
Suppose $g$ is an intensional Jacobian of $f$, meaning there exists a (PAP)
piecewise representation $\\{A_{i},f_{i}\\}_{i\in I}$ of $f$ such that
$g(x)=Jf_{i}(x)$ when $x\in A_{i}$. Because the $A_{i}$ form a partition of
$f$’s domain, we have $\mu=\sum_{i\in I}\mathbf{1}_{A_{i}}\odot\mu$, where
$h\odot\mu$ is the measure obtained by scaling $\mu$ by a scalar function $h$.
Then $f_{*}\mu=\sum_{i\in I}f_{*}(\mathbf{1}_{A_{i}}\odot\mu)=\sum_{i\in
I}(f_{i})_{*}(\mathbf{1}_{A_{i}}\odot\mu)$. For each $i\in I$, suppose
$\rho_{f,i}$ is a density of $(f_{i})_{*}(\mathbf{1}_{A_{i}}\odot\mu)$ with
respect to $B_{f}$. At points in $A_{i}$, such densities are soundly computed
using the original change-of-variables algorithm, because $f_{i}$ is
differentiable and $g$ gives its (ordinary) Jacobian. Summing these densities
(only one of which is non-zero at each point $x$) gives a density $\rho_{f}$
of $f_{*}\mu$.


# Stability Analysis of the Observer Error of an In-Domain Actuated Vibrating
String*

Tobias Malzer1, Hubert Rams2, Bernd Kolar1 and Markus Schöberl1 *This work has
been supported by the Austrian Science Fund (FWF) under grant number P
29964-N32.1Tobias Malzer, Bernd Kolar and Markus Schöberl are with the
Institute of Automatic Control and Control Systems Technology, Johannes Kepler
University Linz, Altenbergerstrasse 66, 4040 Linz, Austria. {tobias.malzer_1,
bernd.kolar<EMAIL_ADDRESS>Rams is with B&R Industrial
Automation GmbH, B&R Straße 1, 5142 Eggelsberg, Austria. hubert.rams@br-
automation.com

###### Abstract

In this paper, the behaviour of the observer error of an in-domain actuated
vibrating string, where the observer system has been designed based on energy
considerations exploiting a port-Hamiltonian system representation for
infinite-dimensional systems, is analysed. Thus, the observer-error dynamics
are reformulated as an abstract Cauchy problem, which enables to draw
conclusions regarding the well-posedness of the observer-error system.
Furthermore, we show that the observer error is asymptotically stable by
applying LaSalle’s invariance principle for infinite-dimensional systems.

##  I Introduction

A very popular research discipline in control theory is the extension of
control methodologies originally developed for systems that are described by
ordinary differential equations (ODEs) to systems governed by partial
differential equations (PDEs); however, with regard to stability
investigations this extension is accompanied by a significant rise of
complexity, see e.g. [1] for a comprehensive framework for the stability
analysis of infinite-dimensional systems. Therefore, a lot of research effort
has been invested in this topic, where for example the stability analysis of
mechanical systems with certain boundary conditions has been addressed. For
instance, in [2] the stability of an Euler-Bernoulli beam subjected to
nonlinear damping and a nonlinear spring at the tip is analysed, whereas [3]
is concerned with the stability behaviour of a gantry crane with heavy chain
and payload. Furthermore, the proof of stability of a Lyapunov-based control
law as well as a Lyapunov-based observer design for an in-domain actuated
Euler-Bernoulli beam has been presented in [4].

A well-known methodology, that has also been extended to the infinite-
dimensional scenario, is the combination of the port-Hamiltonian (pH) system
representation with energy-based control. In this regard, in particular a pH-
system representation based on an underlying jet-bundle structure, see e.g.
[5, 6, 7], as well as a formulation exploiting Stokes-Dirac structures, see
e.g. [8, 9], have turned out to be especially suitable. For a detailed
comparison of these approaches, where the main difference is the choice of the
variables, the interested reader is referred to [10] or [11]. In fact, with
respect to boundary-control systems, a lot of literature is available, see
e.g. [12, 13] and [14, 15], where boundary controllers based on the well-known
energy-Casimir method are designed within the jet-bundle and the Stokes-Dirac
approach, respectively. Moreover, recently the pH-system description has also
been exploited with regard to the observer design, see e.g. [16], where a pH-
based observer-design procedure for boundary-control systems has been
developed within the Stokes-Dirac scenario. In light of the observer design,
of course stability investigations play an important role, since it must be
ensured that the observer error tends to zero.

In [11], a control-design procedure based on the energy-Casimir method
together with an observer design exploiting the pH-system representation has
been presented within the jet-bundle framework as well as within the Stokes-
Dirac scenario for infinite-dimensional systems with in-domain actuation.
Furthermore, the design procedures have been demonstrated and compared by
means of an in-domain actuated vibrating string; however, the investigation
regarding the asymptotic stability of the observer error – which is of course
essential – has only been sketched. Therefore, the aim of this paper is to
carry out the stability investigation of the observer error of this system in
detail. To this end, first of all, in Section II we summarise the observer
design that exploits the pH-system representation based on a jet-bundle
structure, while in Section III the observer design is explicitly demonstrated
for an in-domain actuated vibrating string. Thus, the main contribution of
this paper is to verify the asymptotic stability of the observer error, where
i) it is necessary to investigate the well-posedness, see Subsection IV-A, and
ii) to apply LaSalle’s invariance principle for infinite-dimensional systems,
see Subsection IV-B.

##  II Observer Design based on a Port-Hamiltonian Framework

With respect to the observer design, see [11, Sec. V], we intend to exploit a
pH-system description for infinite-dimensional systems with $1$-dimensional
spatial domain, which is equipped with the spatial coordinate $z\in[0,L]$. The
system representation is based on an underlying jet-bundle structure, and
therefore, first of all we introduce the bundle
$\pi:\mathcal{E}\rightarrow\mathcal{B}$, where the total manifold
$\mathcal{E}$ is equipped with the coordinates $(z,x^{\alpha})$, with
$x^{\alpha}$, $\alpha=1,\ldots,n$, denoting the dependent variables, while the
base manifold $\mathcal{B}$ possesses the independent (spatial) coordinate
$(z)$ solely. Next, we consider the so-called vertical tangent bundle
$\nu_{\mathcal{E}}:\mathcal{V}(\mathcal{E})\rightarrow\mathcal{E}$, equipped
with the coordinates $(z,x^{\alpha},\dot{x}^{\alpha})$, which is a subbundle
of the tangent bundle
$\tau_{\mathcal{E}}:\mathcal{T}(\mathcal{E})\rightarrow\mathcal{E}$,
possessing the coordinates $(z,x^{\alpha},\dot{z},\dot{x}^{\alpha})$ together
with the fibre bases $\partial_{z}=\partial/\partial z$ and
$\partial_{\alpha}=\partial/\partial x^{\alpha}$. Thus, a vertical vector
field $v=\mathcal{E}\rightarrow\mathcal{V}(\mathcal{E})$, in local coordinates
given as $v=v^{\alpha}\partial_{\alpha}$ with $v^{\alpha}\in
C^{\infty}(\mathcal{E})$, i.e. $v^{\alpha}$ is a smooth function on
$\mathcal{E}$, is defined as a section. A further important differential-
geometric object is the so-called co-tangent bundle
$\tau_{\mathcal{E}}^{*}:\mathcal{T}^{*}(\mathcal{E})\rightarrow\mathcal{E}$,
possessing the coordinates $(z,x^{\alpha},\dot{z},\dot{x}_{\alpha})$ together
with the fibre bases $\mathrm{d}z$ and $\mathrm{d}x^{\alpha}$, which allows to
introduce a one-form $w:\mathcal{E}\rightarrow\mathcal{T}^{*}(\mathcal{E})$ as
a section that can locally be given as
$w=\breve{w}\mathrm{d}z+w_{\alpha}\mathrm{d}x^{\alpha}$ with
$\breve{w},w_{\alpha}\in C^{\infty}(\mathcal{E})$. With respect to the pH-
system representation, we are interested in densities
$\mathfrak{H}=\mathcal{H}\mathrm{d}z$ with $\mathcal{H}\in
C^{\infty}(\mathcal{J}^{1}(\mathcal{E}))$, where these densities can be formed
by sections of certain pullback bundles, whose use is omitted here for ease of
presentation. That is, $\mathcal{H}$ is a smooth function on the first jet
manifold $\mathcal{J}^{1}(\mathcal{E})$, which is equipped with the
coordinates $(z,x^{\alpha},x_{z}^{\alpha})$, where the $1$st-order jet
variable $x_{z}^{\alpha}$ corresponds to the derivative of $x^{\alpha}$ with
respect to $z$. Moreover, the first prolongation of a vertical vector field
reads as
$j^{1}(v)=v^{\alpha}\partial_{\alpha}+d_{z}(v^{\alpha})\partial_{\alpha}^{z}$,
with $\partial_{\alpha}^{z}=\partial/\partial x_{z}^{\alpha}$, where we
exploit the total derivative
$d_{z}=\partial_{z}+x_{z}^{\alpha}\partial_{\alpha}+x_{zz}^{\alpha}\partial_{\alpha}^{z}+\ldots$.

Having discussed this essential preliminaries, we are able to introduce the
pH-system representation including inputs and outputs on the spatial domain as

$\displaystyle\dot{x}$
$\displaystyle=(\mathcal{J}-\mathcal{R})(\delta\mathfrak{H})+u\rfloor\mathcal{G}\,,$
(1a) $\displaystyle y$
$\displaystyle=\mathcal{G}^{*}\rfloor\delta\mathfrak{H}\,,$ (1b)

see e.g. [5, 17, 18], where $\rfloor$ denotes the so-called Hook operator
allowing for the natural contraction between tensor fields. In (1), the
variational derivative
$\delta\mathfrak{H}=\delta_{\alpha}\mathcal{H}\mathrm{d}x^{\alpha}\wedge\mathrm{d}z$,
with $\wedge$ denoting the exterior (wedge) product, locally reads as
$\delta_{\alpha}\mathcal{H}=\partial_{\alpha}\mathcal{H}-d_{z}(\partial_{\alpha}^{z}\mathcal{H})$.
Furthermore, the linear operators
$\mathcal{J},\mathcal{R}:\mathcal{T}^{*}(\mathcal{E})\wedge\mathcal{T}^{*}(\mathcal{B})\rightarrow\mathcal{V}(\mathcal{E})$
describe the internal power flow and the dissipation effects of the system,
respectively. The coefficients $\mathcal{J}^{\alpha\beta}$ of the
interconnection tensor $\mathcal{J}$ meet
$\mathcal{J}^{\alpha\beta}=-\mathcal{J}^{\beta\alpha}\in
C^{\infty}(\mathcal{J}^{2}(\mathcal{E}))$, while we have
$\mathcal{R}^{\alpha\beta}=\mathcal{R}^{\beta\alpha}\in
C^{\infty}(\mathcal{J}^{2}(\mathcal{E}))$ and $[\mathcal{R}^{\alpha\beta}]\geq
0$ for the coefficient matrix of the symmetric and positive semi-definite
dissipation mapping $\mathcal{R}$. With respect to the dual input and output
bundles $\rho:\mathcal{U}\rightarrow\mathcal{J}^{2}(\mathcal{E})$ and
$\varrho:\mathcal{Y}\rightarrow\mathcal{J}^{2}(\mathcal{E})$, we have the
input map and its adjoint output map
$\mathcal{G}:\mathcal{U}\rightarrow\mathcal{V}(\mathcal{E})$ and
$\mathcal{G}^{*}:\mathcal{T}^{*}(\mathcal{E})\wedge\mathcal{T}^{*}(\mathcal{B})\rightarrow\mathcal{Y}$,
respectively, and thus, the relation
$(u\rfloor\mathcal{G})\rfloor\delta\mathfrak{H}=u\rfloor(\mathcal{G}^{*}\rfloor\delta\mathfrak{H})=u\rfloor
y$ holds, see [5, Sec. 4] or [17, Sec. 3]. To be able to determine the formal
change of the Hamiltonian functional
$\mathscr{H}=\int_{0}^{L}\mathcal{H}\mathrm{d}z$ along solutions of (1a), we
make use of the Lie-derivative $\mathrm{L}_{j^{1}(v)}$, where we set
$v=\dot{x}$ with (1a), see [12, Sec. IV-A], and thus, we obtain

$\dot{\mathscr{H}}=-\int_{0}^{L}\mathcal{R}(\delta\mathfrak{H})\rfloor\delta\mathfrak{H}+\int_{0}^{L}u\rfloor
y+\left.(\dot{x}\rfloor\delta^{\partial}\mathfrak{H})\right|_{0}^{L}\,$ (2)

by means of integration by parts and Stoke’s theorem. If $\mathscr{H}$
corresponds to the total energy of the system, then (2) states a power-balance
relation, where the first expression describes the energy that is dissipated
for example due to damping effects. Moreover, the expression
$\int_{0}^{L}u\rfloor y$ denotes a collocation term distributed over (a part
of) the spatial domain. The last term corresponds to collocation restricted to
the boundary, which is indicated by $(\cdot)|_{0}^{L}$, where the boundary
operator locally reads as
$\delta_{\alpha}^{\partial}\mathcal{H}=\partial_{\alpha}^{z}\mathcal{H}$. Note
that here we consider systems with trivial boundary conditions, implying that
the boundary ports
$(\dot{x}^{\alpha}\delta_{\alpha}^{\partial}\mathcal{H})|_{0}^{L}$ vanish.

Next, the intention is to exploit the pH-formulation with respect to the
observer design. In particular, the copy of the plant (1a) is extended by an
error-injection term, and thus, by means of the observer-energy density
$\hat{\mathcal{H}}$, the observer system is locally given by

$\displaystyle\dot{\hat{x}}^{\hat{\alpha}}$
$\displaystyle=(\mathcal{J}^{\hat{\alpha}\hat{\beta}}-\mathcal{R}^{\hat{\alpha}\hat{\beta}})\delta_{\hat{\beta}}\hat{\mathcal{H}}+\mathcal{G}_{\xi}^{\hat{\alpha}}u^{\xi}+\mathcal{K}_{\eta}^{\hat{\alpha}}u_{o}^{\eta}\,,$
(3a) $\displaystyle\hat{y}_{\xi}$
$\displaystyle=\mathcal{G}_{\xi}^{\hat{\alpha}}\delta_{\hat{\alpha}}\hat{\mathcal{H}}\,,$
(3b)

with $\hat{\alpha},\hat{\beta}=1,\ldots,n$ and $\xi,\eta=1,\ldots,m$, where we
use Einstein’s convention on sums. In (3a), we have the additional input
$u_{o}^{\eta}=\delta^{\eta\xi}(\bar{y}_{\xi}-\hat{\bar{y}}_{\xi})$ – with the
Kronecker-Delta symbol meeting $\delta^{\xi\eta}=1$ for $\xi=\eta$ and
$\delta^{\xi\eta}=0$ for $\xi\neq\eta$ –, where $\bar{y}_{\xi}$ corresponds to
the integrated output density of the plant according to
$\bar{y}_{\xi}=\int_{0}^{L}y_{\xi}\mathrm{d}z$, which is assumed to be
available as measurement quantity, while $\hat{\bar{y}}_{\xi}$ represents the
copy of the integrated plant-output according to
$\hat{\bar{y}}_{\xi}=\int_{0}^{L}\hat{y}_{\xi}\mathrm{d}z$ with (3b). The aim
is to design the observer gain $\mathcal{K}_{\eta}^{\hat{\alpha}}$ such that
the observer error $\tilde{x}=x-\hat{x}$ tends to $0$, where it is beneficial
to reformulate the observer-error dynamics
$\dot{\tilde{x}}=\dot{x}-\dot{\hat{x}}$ as pH-system according to

$\displaystyle\dot{\tilde{x}}^{\tilde{\alpha}}$
$\displaystyle=(\mathcal{J}^{\tilde{\alpha}\tilde{\beta}}-\mathcal{R}^{\tilde{\alpha}\tilde{\beta}})\delta_{\tilde{\beta}}\tilde{\mathcal{H}}-\mathcal{K}_{\xi}^{\tilde{\alpha}}u_{o}^{\xi}\,,$
(4a) $\displaystyle\tilde{y}_{\xi}$
$\displaystyle=-\mathcal{K}_{\xi}^{\tilde{\alpha}}\delta_{\tilde{\alpha}}\tilde{\mathcal{H}}\,.$
(4b)

with (4b) denoting the collocated output density. If we investigate the formal
change of the error-Hamiltonian
$\tilde{\mathscr{H}}=\int_{0}^{L}\tilde{\mathcal{H}}\mathrm{d}z$, which
follows to

$\dot{\tilde{\mathscr{H}}}=-\int_{0}^{L}\delta_{\tilde{\alpha}}(\tilde{\mathcal{H}})\mathcal{R}^{\tilde{\alpha}\tilde{\beta}}\delta_{\tilde{\beta}}(\tilde{\mathcal{H}})\mathrm{d}z+\ldots\\\
-\int_{0}^{L}\delta_{\tilde{\alpha}}(\tilde{\mathcal{H}})\mathcal{K}_{\xi}^{\tilde{\alpha}}\delta^{\xi\eta}(\bar{y}_{\eta}-\hat{\bar{y}}_{\eta})\mathrm{d}z\,,$

we find that by means of a proper choice for the components
$\mathcal{K}_{\xi}^{\hat{\alpha}}$ we are able to render
$\dot{\tilde{\mathscr{H}}}\leq 0$ . Hence, the total energy of the observer
error $\tilde{\mathscr{H}}$ is an appropriate candidate for a Lyapunov
functional and therefore serves as basis with respect to the stability
analysis. Next, the observer-design procedure is demonstrated by an example.

##  III Observer Design for an In-Domain Actuated Vibrating String

In this chapter, we design an infinite-dimensional observer for an in-domain
actuated vibrating string by exploiting energy considerations. The governing
equation of motion of the system under consideration reads as

$\rho\frac{\partial^{2}w}{\partial t^{2}}=T\frac{\partial^{2}w}{\partial
z^{2}}+f(z,t)\,,$ (5a) where $w$ describes the vertical deflection of the
string, $\rho$ the mass density and $T$ Young’s modulus. Regarding the
boundary conditions, we have that the string is clamped at $z=0$ and free at
$z=L$, i.e. $\displaystyle w(0,t)$ $\displaystyle=0\,,\quad T\frac{\partial
w}{\partial z}(L,t)=0\,.$ (5b)

In (5a), the distributed force $f(z,t)=g(z)u(t)$ is generated by an actuator
behaving like a piezoelectric patch, where the applied voltage $u(t)$ serves
as manipulated variable. The spatially dependent function
$g(z)=h(z-L_{p_{1}})-h(z-L_{p_{2}})$, where $h(\cdot)$ denotes the Heaviside
function, describes the placement of the actuator between $z=L_{p_{1}}$ and
$z=L_{p_{2}}$. In fact, the force-distribution on the domain $L_{p_{1}}\leq
z\leq L_{p_{2}}$ is supposed to be constant and is scaled by $u(t)$.

First, the intention is to find a pH-system representation that can be
exploited for the observer design. To this end, we introduce the underlying
bundle structure based on $\pi:(z,w,p)\rightarrow(z)$ together with the
generalised momenta $p=\rho\dot{w}$, and thus, (5a) can be rewritten as

$\dot{p}=Tw_{zz}+g(z)u\,.$ (6)

If we use the Hamiltonian density
$\mathcal{H}=\frac{1}{2\rho}p^{2}+\frac{1}{2}T(w_{z})^{2}\in\mathcal{J}^{1}(\mathcal{E})$,
we obtain the appropriate pH-system formulation

$\displaystyle\left[\begin{array}[]{c}\dot{w}\\\ \dot{p}\end{array}\right]$
$\displaystyle=\left[\begin{array}[]{cc}0&1\\\
-1&0\end{array}\right]\left[\begin{array}[]{c}\delta_{w}\mathcal{H}\\\
\delta_{p}\mathcal{H}\end{array}\right]+\left[\begin{array}[]{c}0\\\
g(z)\end{array}\right]u\,,$ (7i) $\displaystyle y$
$\displaystyle=\left[\begin{array}[]{cc}0&g(z)\end{array}\right]\left[\begin{array}[]{c}\delta_{w}\mathcal{H}\\\
\delta_{p}\mathcal{H}\end{array}\right]=g(z)\frac{p}{\rho}\,.$ (7m)

By taking the boundary conditions (5b) into account, one finds that the formal
change of the Hamiltonian functional $\mathscr{H}$ follows to
$\dot{\mathscr{H}}=\int_{0}^{L}g(z)\frac{p}{\rho}u\mathrm{d}z$, i.e. we have a
distributed port that can be used for control purposes. In fact, for the
system under consideration, in [11] a dynamic controller based on the energy-
Casimir method has been designed. However, with regard to this control
methodology, it should be mentioned that it yields unsatisfactory results for
uncertain initial conditions, see e.g. [19] where this problem is briefly
discussed for a boundary-control system. Therefore, in the following we intend
to design an infinite-dimensional observer in order to overcome this obstacle.

Concerning the observer design, it is assumed that the spatial integration of
the distributed output density (7m) according to
$\bar{y}=\int_{0}^{L}g(z)\frac{p}{\rho}\mathrm{d}z$, which can be interpreted
as the current through the actuator, is available as measurement quantity.
Thus, if we use the observer density
$\hat{\mathcal{H}}=\frac{1}{2\rho}\hat{p}^{2}+\frac{1}{2}T(\hat{w}_{z})^{2}$
and the copy of the plant output according to
$\hat{\bar{y}}=\int_{0}^{L}g(z)\frac{\hat{p}}{\rho}\mathrm{d}z$, we are able
to introduce an observer for the in-domain actuated vibrating string in the
form

$\displaystyle\left[\begin{array}[]{c}\dot{\hat{w}}\\\
\dot{\hat{p}}\end{array}\right]\\!$
$\displaystyle=\\!\left[\\!\begin{array}[]{cc}0\\!&\\!1\\\
-1\\!&\\!0\end{array}\\!\right]\\!\left[\begin{array}[]{c}\delta_{\hat{w}}\hat{\mathcal{H}}\\\
\delta_{\hat{p}}\hat{\mathcal{H}}\end{array}\right]\\!+\\!\left[\begin{array}[]{c}0\\\
g(z)\end{array}\right]\\!u\\!+\\!\left[\begin{array}[]{c}k_{1}\\\
k_{2}\end{array}\right]\\!(\bar{y}-\hat{\bar{y}}),$

where the governing equations are restricted to the boundary conditions
$\hat{w}(0)=0$ and $T\hat{w}_{z}(L)=0$. Next, by means of the error
coordinates $\tilde{w}=w-\hat{w}$, $\tilde{p}=p-\hat{p}$, the observer-error
dynamics can be deduced to

$\displaystyle\dot{\tilde{w}}$
$\displaystyle=\dot{w}-\dot{\hat{w}}=\frac{1}{\rho}\tilde{p}-k_{1}(\bar{y}-\hat{\bar{y}})\,,$
(8a) $\displaystyle\dot{\tilde{p}}$
$\displaystyle=\dot{p}-\dot{\hat{p}}=T\tilde{w}_{zz}-k_{2}(\bar{y}-\hat{\bar{y}})\,,$
(8b) where the boundary conditions $\displaystyle\tilde{w}(0)$
$\displaystyle=0\,,\quad T\tilde{w}_{z}(L)=0$ (8c)

hold. With respect to the determination of $k_{1}$ and $k_{2}$, it is
beneficial to reformulate (8a) and (8b) as the pH-system

$\displaystyle\left[\begin{array}[]{c}\dot{\tilde{w}}\\\
\dot{\tilde{p}}\end{array}\right]\\!$
$\displaystyle=\\!\left[\begin{array}[]{cc}0&1\\\
-1&0\end{array}\right]\\!\left[\begin{array}[]{c}\delta_{\tilde{w}}\tilde{\mathcal{H}}\\\
\delta_{\tilde{p}}\tilde{\mathcal{H}}\end{array}\right]\\!-\\!\left[\begin{array}[]{c}k_{1}\\\
k_{2}\end{array}\right]\\!(\bar{y}-\hat{\bar{y}}),$ (9i)
$\displaystyle\tilde{y}$
$\displaystyle\\!=\\!-\\!\left[\begin{array}[]{cc}k_{1}&k_{2}\end{array}\right]\\!\left[\begin{array}[]{c}\delta_{\tilde{w}}\tilde{\mathcal{H}}\\\
\delta_{\tilde{p}}\tilde{\mathcal{H}}\end{array}\right]\\!=\\!k_{1}T\tilde{w}_{zz}\\!-\\!k_{2}\frac{\tilde{p}}{\rho},$
(9m)

where the energy density of the observer error reads as
$\tilde{\mathcal{H}}=\frac{1}{2\rho}\tilde{p}^{2}+\frac{1}{2}T(\tilde{w}_{z})^{2}$
and (9m) states the corresponding output density. If we investigate the formal
change of the error-Hamiltonian functional $\tilde{\mathscr{H}}$, which can be
deduced to

$\displaystyle\dot{\tilde{\mathscr{H}}}$
$\displaystyle=\int_{0}^{L}(T\tilde{w}_{zz}k_{1}(\bar{y}-\hat{\bar{y}})-\frac{\tilde{p}}{\rho}k_{2}(\bar{y}-\hat{\bar{y}}))\mathrm{d}z\,,$
(10)

and take into account that
$(\bar{y}-\hat{\bar{y}})=\int_{0}^{L}g(z)\frac{1}{\rho}\tilde{p}\mathrm{d}z$,
we find that the choice $k_{1}=0$ and $k_{2}=kg(z)$ with $k>0$, yields

$\dot{\tilde{\mathscr{H}}}(\tilde{w},\tilde{p})=-k(\bar{y}-\hat{\bar{y}})^{2}\leq
0\,.$ (11)

However, the fact that $\tilde{\mathscr{H}}>0$ and
$\dot{\tilde{\mathscr{H}}}\leq 0$ hold is not sufficient for the convergence
of the observer, and therefore, in the following, detailed stability
investigations are carried out to verify that the observer error is
asymptotically stable.

##  IV Observer Convergence

In this section, based on functional analysis the convergence of the observer
error is proven in two steps. First, we address the well-posedness of the
observer-error system making heavy use of the well-known Lumer-Phillips
theorem, see e.g. [20]. Afterwards, LaSalle’s invariance principle for
infinite-dimensional systems is applied to show the asymptotic stability of
the observer error, where beforehand it is necessary to verify the
precompactness of the solution trajectories.

###  IV-A Well-posedness of the Observer-Error System

Now, a careful investigation of the well-posedness of the observer-error
system is carried out. To this end, we reformulate (8) as an abstract Cauchy
problem and show that the operator under consideration generates a
$C_{0}$-semigroup of contractions.

First, we define the state vector
$\chi=\left[\chi^{1},\chi^{2}\right]^{T}=\left[\tilde{w},\tilde{p}\right]^{T}$
together with the state space $\mathcal{X}=H_{C}^{1}(0,L)\times L^{2}(0,L)$,
where $H_{C}^{1}(0,L)=\\{\chi^{1}\in H^{1}(0,L)|\chi^{1}(0)=0\\}$, with
$H^{l}(0,L)$ denoting a Sobolev space of functions whose derivatives up to
order $l$ are square integrable, see [21] for a detailed introduction of
Sobolev spaces. Thus, the state space $\mathcal{X}$ is equipped with the
standard norm

$\left\|\chi\right\|_{n}^{2}=\left\langle\tilde{w},\tilde{w}\right\rangle_{L^{2}}+\left\langle\tilde{w}_{z},\tilde{w}_{z}\right\rangle_{L^{2}}+\left\langle\tilde{p},\tilde{p}\right\rangle_{L^{2}}\,.$
(12)

Next, to be able to rewrite the observer-error dynamics as an abstract Cauchy
problem of the form $\dot{\chi}(t)=\mathcal{A}\chi(t)$ with
$\chi(0)=\chi_{0}$, we introduce the linear operator
$\mathcal{A}:\mathcal{D}(\mathcal{A})\subset\mathcal{X}\rightarrow\mathcal{X}$
according to

$\mathcal{A}:\left[\begin{array}[]{c}\tilde{w}\\\
\tilde{p}\end{array}\right]\rightarrow\left[\begin{array}[]{c}\frac{1}{\rho}\tilde{p}\\\
T\tilde{w}_{zz}-kg(z)\int_{0}^{L}g(z)\frac{1}{\rho}\tilde{p}\mathrm{d}z\end{array}\right]\,,$

where the (dense) domain of $\mathcal{A}$ is defined as

$\mathcal{D}(\mathcal{A}):=\\{\chi\in\mathcal{X}|\tilde{w}\in(H^{2}(0,L)\cap
H_{C}^{1}(0,L)),\\\ \tilde{p}\in H_{C}^{1}(0,L),T\tilde{w}_{z}(L)=0\\}\,.$
(13)

Thus, the intention is to investigate the operator $\mathcal{A}$ regarding
some properties such that a variant of the well-known Lumer-Phillips theorem
[20, Thm. 1.2.4] can be applied. With respect to this forthcoming
investigations, it is beneficial to introduce

$\left\|\chi\right\|_{\mathcal{\mathcal{X}}}^{2}=T\left\langle\tilde{w}_{z},\tilde{w}_{z}\right\rangle_{L^{2}}+\frac{1}{\rho}\left\langle\tilde{p},\tilde{p}\right\rangle_{L^{2}}\,,$
(14)

which is called energy norm due to the equivalence
$\tilde{\mathscr{H}}=\frac{1}{2}\left\|\chi\right\|_{\mathcal{\mathcal{X}}}^{2}$.
Because $\tilde{w}(0)=0$ and further
$\tilde{w}(z)=\int_{0}^{z}\tilde{w}_{z}\mathrm{d}y_{1}$ holds, we find
constants $c_{1},c_{2}$, which have to meet
$0<c_{1}\leq\mathrm{min}\left(\frac{T}{L+1},\frac{1}{\rho}\right)$ and
$c_{2}\geq\mathrm{max}\left(T,\frac{1}{\rho}\right)>0$, such that
$c_{1}\left\|\chi\right\|_{n}^{2}\leq\left\|\chi\right\|_{\mathcal{X}}^{2}\leq
c_{2}\left\|\chi\right\|_{n}^{2}$ is fulfilled, and hence, the energy norm
(14) is equivalent to the standard norm (12). Similar to the proof of Lemma
2.2 in [3], where they exploit the dense inclusion $H^{2}(0,L)\subset
H^{1}(0,L)$ and modify the boundary values of $\tilde{w}$ and its derivatives
in a proper manner, it can be shown that the domain $\mathcal{D}(\mathcal{A})$
given in (13) is dense in $\mathcal{X}$. Thus, according to [20, Def. 1.1.1],
– since we have the equivalence
$\tilde{\mathscr{H}}=\frac{1}{2}\left\|\chi\right\|_{\mathcal{\mathcal{X}}}^{2}$
– the relation (11) implies that $\mathcal{A}$ is dissipative.

In the following, we show that the inverse operator $\mathcal{A}^{-1}$ exists
and is bounded, i.e. for every $\bar{\chi}=\left[f,h\right]^{T}\in\mathcal{X}$
and $\chi=\left[\tilde{w},\tilde{p}\right]^{T}\in\mathcal{D}(\mathcal{A})$, we
can uniquely solve

$\mathcal{A}\\!\left[\\!\begin{array}[]{c}\tilde{w}\\\
\tilde{p}\end{array}\\!\right]\\!=\\!\left[\begin{array}[]{c}\frac{1}{\rho}\tilde{p}\\\
T\tilde{w}_{zz}-kg(z)\int_{0}^{L}g(z)\frac{1}{\rho}\tilde{p}\mathrm{d}z\end{array}\right]\\!=\\!\left[\begin{array}[]{c}f\\\
h\end{array}\right],$ (15)

and prove that $\mathcal{A}^{-1}$ maps bounded sets in $\mathcal{X}$ into
bounded sets in $\mathcal{K}:=(H^{2}(0,L)\cap H_{C}^{1}(0,L))\times
H_{C}^{1}(0,L)$. From the $1$st line of (15) it follows that $\tilde{p}=\rho
f\in H_{C}^{1}(0,L)$. Moreover, an integration of the $2$nd line of (15)
yields

$\tilde{w}_{z}(z)=-\frac{1}{T}(\int_{z}^{L}h(y_{2})\mathrm{d}y_{2}+\ldots\\\
+\int_{z}^{L}kg(y_{2})\int_{0}^{L}g(y_{1})f(y_{1})\mathrm{d}y_{1}\mathrm{d}y_{2})$
(16)

as $\tilde{w}_{z}(L)=0$ holds. If we further integrate (16), we obtain

$\tilde{w}(z)=-\frac{1}{T}(\int_{0}^{z}\int_{y_{3}}^{L}h(y_{2})\mathrm{d}y_{2}\mathrm{d}y_{3}+\ldots\\\
+\int_{0}^{z}\int_{y_{3}}^{L}kg(y_{2})\int_{0}^{L}g(y_{1})f(y_{1})\mathrm{d}y_{1}\mathrm{d}y_{2}\mathrm{d}y_{3})$
(17)

as $\tilde{w}(0)=0$, and thus, $\tilde{w}(z)$ is uniquely defined by
$\bar{\chi}$. Since we have shown that the inverse operator $\mathcal{A}^{-1}$
exists, it remains to investigate the boundedness. To this end, it is verified
that the norm of $\chi=\mathcal{A}^{-1}\bar{\chi}$ in $\mathcal{K}$ is bounded
by $\left\|\bar{\chi}\right\|_{\mathcal{X}}$. First, we state an inequality
that is often used in the sequel; in fact, for a – basically arbitrary –
function $f$, by means of the Cauchy-Schwarz inequality we find the important
relation

$(\int_{0}^{L}f\mathrm{d}z)^{2}\leq
C\int_{0}^{L}\left|f\right|^{2}\mathrm{d}z\,,$ (18)

where it should be mentioned that here and in the following $C$ denotes
positive, not necessarily equal constants. Next, we investigate the norm
$\left\|\tilde{w}_{z}\right\|_{L^{2}}$. Therefore, we substitute (16) in
$\left\|\tilde{w}_{z}\right\|_{L^{2}}=(\int_{0}^{L}\left|\tilde{w}_{z}\right|^{2}\mathrm{d}z)^{1/2}$
and apply the Triangle inequality, which yields

$\left\|\tilde{w}_{z}\right\|_{L^{2}}\leq(\int_{0}^{L}\frac{1}{T^{2}}(\int_{z}^{L}h(y_{2})\mathrm{d}y_{2})^{2}\mathrm{d}z)^{\frac{1}{2}}+\\\
(\int_{0}^{L}\frac{1}{T^{2}}(\int_{z}^{L}kg(y_{2})\int_{0}^{L}g(y_{1})f(y_{1})\mathrm{d}y_{1}\mathrm{d}y_{2})^{2}\mathrm{d}z)^{\frac{1}{2}}.$

Thus, by means of (18) and due to the fact that
$\int_{z}^{L}h^{2}\mathrm{d}y_{2}\leq\int_{0}^{L}h^{2}\mathrm{d}z=\left\|h\right\|_{L_{2}}^{2}$
holds, we obtain

$\left\|\tilde{w}_{z}\right\|_{L^{2}}\leq
C\left\|h\right\|_{L_{2}}\frac{1}{T}L^{\frac{1}{2}}+\\\
C(\int_{0}^{L}\frac{1}{T^{2}}\int_{z}^{L}k^{2}g^{2}(y_{2})(\int_{0}^{L}g(y_{1})f(y_{1})\mathrm{d}y_{1})^{2}\mathrm{d}y_{2}\mathrm{d}z)^{\frac{1}{2}}.$
(19)

Next, we apply the Cauchy-Schwarz inequality to the second term of the right-
hand side in (19), which enables us to find the estimate
$\left\|\tilde{w}_{z}\right\|_{L^{2}}\leq
C(\left\|f\right\|_{H^{1}}+\left\|h\right\|_{L^{2}})$. Similarly, by means of
the $2$nd line of (15) we are able to deduce
$\left\|\tilde{w}_{zz}\right\|_{L^{2}}\leq
C(\left\|f\right\|_{H^{1}}+\left\|h\right\|_{L^{2}})$. Moreover, if we
substitute (17) in
$\left\|\tilde{w}\right\|_{L^{2}}=(\int_{0}^{L}\left|\tilde{w}\right|^{2}\mathrm{d}z)^{1/2}$,
we find $\left\|\tilde{w}\right\|_{L^{2}}\leq
C(\left\|f\right\|_{H^{1}}+\left\|h\right\|_{L^{2}})$, and hence, we have
$\left\|\tilde{w}\right\|_{H^{2}}\leq
C(\left\|f\right\|_{H^{1}}+\left\|h\right\|_{L^{2}})$. Since from the first
line in (15) we immediately get
$\left\|\tilde{p}\right\|_{H^{1}}=\rho\left\|f\right\|_{H^{1}}$, we can state
the important estimate

$\left\|\tilde{w}\right\|_{H^{2}}+\left\|\tilde{p}\right\|_{H^{1}}\leq
C(\left\|f\right\|_{H^{1}}+\left\|h\right\|_{L^{2}})\,,$

which shows that $\mathcal{A}^{-1}$ maps bounded sets in $\mathcal{X}$ into
bounded sets in $\mathcal{K}$.

The boundedness of $\mathcal{A}^{-1}$ implies that $\lambda=0$ cannot be an
eigenvalue of $\mathcal{A}$, and hence, it follows that
$0\in\rho(\mathcal{A})$, the resolvent set of $\mathcal{A}$. Furthermore,
since $\mathcal{D}(\mathcal{A})$ is dense in $\mathcal{X}$ and $\mathcal{A}$
is dissipative, all requirements for the variant of the Lumer-Phillips theorem
according to [20, Thm. 1.2.4] are met, and therefore, we are able to show that
$\mathcal{A}$ is the infinitesimal generator of a $C_{0}$-semigroup of
contractions on $\mathcal{X}$. That is, the norm
$\left\|\chi(t)\right\|_{\mathcal{X}}$ remains bounded for
$t\rightarrow\infty$; however, with respect to the observer error it is
necessary that it tends to $0$, which is shown in the following subsection.

###  IV-B Asymptotic Stability of the Observer-Error System

Now, the objective is to apply LaSalle’s invariance principle in order to
prove the asymptotic stability of the observer error, where the proof follows
the intention of [22, Sec. 3]. However, the applicability of LaSalle’s
invariance principle according to [1, Thm. 3.64] requires the precompactness
of the solution trajectories, which is not ensured in the infinite-dimensional
scenario. Since in the previous section we have shown that $\mathcal{A}^{-1}$
is bounded, by means of the Sobolev embedding theorem, it follows that
$\mathcal{A}^{-1}$ is compact (see proof of Lemma 2.4 in [3] or [1, p. 201]),
which further implies the precompactness of the trajectories, see [2, Rem.
4.2].

In light of LaSalle’s invariance principle, we investigate the set
$\mathcal{S}=\\{\chi\in\mathcal{X}|\dot{\tilde{\mathscr{H}}}=0\\}$, where
$\dot{\tilde{\mathscr{H}}}(\tilde{w},\tilde{p})=-k(\int_{0}^{L}g(z)\frac{1}{\rho}\tilde{p}\mathrm{d}z)^{2}=0$
implies $\int_{0}^{L}g(z)\frac{1}{\rho}\tilde{p}\mathrm{d}z=0$. In the set
$\mathcal{S}$ we have

$\displaystyle\rho\tilde{w}_{tt}$ $\displaystyle=T\tilde{w}_{zz}\,,$ (20a)
$\displaystyle\tilde{w}(0,t)$ $\displaystyle=0\,,$ (20b) $\displaystyle
T\tilde{w}_{z}(L,t)$ $\displaystyle=0\,,$ (20c)

which is similar to the problem considered in [22, Sec. 3]; however, the
restriction describing the set $\mathcal{S}$, which is constrained to the
boundary there, is completely different. To be able to show that the only
possible solution in $\mathcal{S}$ is the trivial one, we need to investigate
the general solution of (20). To this end, like in [22, Sec. 3], we first
focus on determining the eigenvalues and eigenfunctions of (20), i.e. we
consider

$\bar{\mathcal{A}}\left[\begin{array}[]{cc}\phi&\kappa\end{array}\right]^{T}=\left[\begin{array}[]{cc}\frac{\kappa}{\rho}&T\phi_{zz}\end{array}\right]=\lambda\left[\begin{array}[]{cc}\phi&\kappa\end{array}\right]^{T}\,.$
(21)

From (21) we obtain $\kappa=\rho\lambda\phi$ and furthermore

$\displaystyle\phi_{zz}$
$\displaystyle=\frac{\lambda^{2}}{\vartheta^{2}}\phi\,,$ (22a)
$\displaystyle\phi(0)$ $\displaystyle=0\,,$ (22b) $\displaystyle\phi_{z}(L)$
$\displaystyle=0\,,$ (22c)

where $\vartheta^{2}=\frac{T}{\rho}$. To find the solution of (22), we have to
investigate the three cases $\lambda^{2}>0$, $\lambda^{2}=0$ and
$\lambda^{2}<0$ in the following. For $\lambda^{2}>0$ and $\lambda^{2}=0$, we
have the ansatz
$\phi(z)=Ae^{\frac{\lambda}{\vartheta}z}+Be^{-\frac{\lambda}{\vartheta}z}$ and
$\phi(z)=Az+B$, respectively, where by means of the boundary conditions (22b)
and (22c), one can easily deduce that for both cases only the trivial solution
$\phi(z)=0$ exists. Thus, we focus on the case $\lambda^{2}<0$, and
consequently, due to the fact that $\lambda$ has an imaginary character then,
as ansatz for the eigenfunctions we have
$\phi(z)=A\sin(\frac{\left|\lambda\right|}{\vartheta}z)+B\cos(\frac{\left|\lambda\right|}{\vartheta}z)$.
To fulfil the boundary condition (22b), $B=0$ must be valid, and hence, the
ansatz simplifies to $\phi(z)=A\sin(\frac{\left|\lambda\right|}{\vartheta}z)$.
Furthermore, by means of the boundary condition (22c), we find
$\partial_{z}\phi(L)=\frac{\left|\lambda\right|}{\vartheta}A\cos(\frac{\left|\lambda\right|}{\vartheta}L)=0$,
which exhibits infinitely many non-trivial solutions for

$\left|\lambda_{k}\right|=(k-\frac{1}{2})\frac{\pi}{L}\vartheta\,,$ (23)

with $k=1,2,\ldots$. With regard to the investigation of the set
$\mathcal{S}$, the velocity of the vibrating string is of particular interest.
Consequently, since we deduced the (imaginary) eigenvalues $\lambda_{k}=\pm
i\omega_{k}\vartheta$ with $\omega_{k}=(k-\frac{1}{2})\frac{\pi}{L}$, the
ansatz for the general solution of the velocity can be given according to

$\displaystyle\tilde{w}_{t}(z,t)$
$\displaystyle\\!=\\!\overset{\infty}{\underset{\mathop{k=1}}{\mathop{\sum}}}\\!(a_{k}\cos(\omega_{k}\vartheta
t)\\!+\\!b_{k}\sin(\omega_{k}\vartheta t))\varphi_{k}(z),$ (24a) where the
coefficients $A_{k}$ are hidden in $a_{k}$ and $b_{k}$, and therefore, for the
eigenfunctions we use $\varphi_{k}(z)=\sin(\omega_{k}z)$ here and in the
sequel. Hence, an integration of (24a) yields
$\tilde{w}(z,t)\\!=\\!\overset{\infty}{\underset{\mathop{k=1}}{\mathop{\sum}}}\\!(a_{k}\sin(\omega_{k}\vartheta
t)\\!-\\!b_{k}\cos(\omega_{k}\vartheta
t))\frac{\varphi_{k}(z)}{\omega_{k}\vartheta}.$ (24b)

By means of $\sin(x)=\frac{1}{2i}(e^{ix}-e^{-ix})$ and
$\cos(x)=\frac{1}{2}(e^{ix}+e^{-ix})$, after a straightforward computation we
can beneficially rewrite (24) according to

$\left[\begin{array}[]{c}\tilde{w}(z,t)\\\
\tilde{w}_{t}(z,t)\end{array}\right]=\overset{\infty}{\underset{\mathop{k=1}}{\mathop{\sum}}}c_{k}e^{i\omega_{k}\vartheta
t}\left[\begin{array}[]{c}-i\frac{\varphi_{k}}{\omega_{k}\vartheta}\\\
\phi_{k}\end{array}\right]+\ldots\\\
\overset{\infty}{\underset{\mathop{k=1}}{\mathop{\sum}}}c_{-k}e^{-i\omega_{k}\vartheta
t}\left[\begin{array}[]{c}i\frac{\varphi_{k}}{\omega_{k}\vartheta}\\\
\phi_{k}\end{array}\right]\,,$

where the coefficients $c_{k}=\frac{1}{2}\left(a_{k}-ib_{k}\right)$ and
$c_{-k}=\frac{1}{2}\left(a_{k}+ib_{k}\right)$ fulfil (see [22, Eq. (3.19)])

$\overset{\infty}{\underset{\mathop{k=1}}{\mathop{\sum}}}\left|c_{\pm
k}\right|^{2}=\overset{\infty}{\underset{\mathop{k=1}}{\mathop{\sum}}}\left(a_{k}^{2}+b_{k}^{2}\right)<\infty\,,$
(25)

which will play an important role later. Thus, we are able to write
$\int_{0}^{L}g(z)\frac{1}{\rho}\tilde{p}\mathrm{d}z=\int_{L_{p_{1}}}^{L_{p_{2}}}\tilde{w}_{t}\mathrm{d}z=0$
as

$\int_{L_{p_{1}}}^{L_{p_{2}}}\overset{\infty}{\underset{\mathop{k=1}}{\mathop{\sum}}}(c_{k}e^{i\omega_{k}\vartheta
t}+c_{-k}e^{-i\omega_{k}\vartheta t})\sin(\omega_{k}z)\mathrm{d}z=0\,.$ (26)

Now, we show that the only solution in $\mathcal{S}$ is the trivial one, i.e.
$c_{\pm k}=0\forall k\geq 1$ is valid. Otherwise, if there exists a $k_{0}$
with $\left|c_{k_{0}}\right|\neq 0$, due to (25) we can find a $K>k_{0}$ such
that

$\displaystyle\left|\int_{L_{p_{1}}}^{L_{p_{2}}}\overset{\infty}{\underset{\mathop{k=K}}{\mathop{\sum}}}c_{k}\varphi_{k}\mathrm{d}z\right|$
$\displaystyle<\left|\frac{c_{k_{0}}}{4}\int_{L_{p_{1}}}^{L_{p_{2}}}\varphi_{k_{0}}\mathrm{d}z\right|$
(27a)
$\displaystyle\left|\int_{L_{p_{1}}}^{L_{p_{2}}}\overset{\infty}{\underset{\mathop{k=K}}{\mathop{\sum}}}c_{-k}\varphi_{k}\mathrm{d}z\right|$
$\displaystyle<\left|\frac{c_{k_{0}}}{4}\int_{L_{p_{1}}}^{L_{p_{2}}}\varphi_{k_{0}}\mathrm{d}z\right|$
(27b)

holds, i.e. the sum of the coefficients from $K$ to $\infty$ multiplied with
their corresponding eigenfunctions can be bounded by $c_{k_{0}}$ and
$\varphi_{k_{0}}$. Here, it is assumed that
$\int_{L_{p_{1}}}^{L_{p_{2}}}\sin(\omega_{k_{0}})\mathrm{d}z\neq 0$, i.e.
$\omega_{k_{0}}\neq\frac{2\pi}{L_{p_{2}}-L_{p_{1}}}j$ with
$j\in\mathbb{N}_{+}$. However, if we consider the absolute value of the
eigenvalues (23), we find that this is ensured for a proper choice of the
length of the in-domain actuator according to
$L_{p_{2}}-L_{p_{1}}\neq\frac{4L}{2k-1}$. Consequently, because
$\omega_{k}\neq\omega_{l}\forall k\neq l$, for $t>0$ we can reformulate (26)
as

$-c_{k_{0}}\int_{L_{p_{1}}}^{L_{p_{2}}}\varphi_{k_{0}}\mathrm{d}z=\int_{L_{p_{1}}}^{L_{p_{2}}}\\{\overset{K}{\underset{\mathop{k=1,k\neq
k_{0}}}{\mathop{\sum}}}c_{k}e^{i(\omega_{k}-\omega_{k_{0}})\vartheta
t}\varphi_{k}+\\\
+\overset{\infty}{\underset{\mathop{k=K+1}}{\mathop{\sum}}}c_{k}e^{i(\omega_{k}-\omega_{k_{0}})\vartheta
t}\varphi_{k}+\overset{K}{\underset{\mathop{k=1}}{\mathop{\sum}}}c_{-k}e^{-i(\omega_{k}+\omega_{k_{0}})\vartheta
t}\varphi_{k}+\\\
+\overset{\infty}{\underset{\mathop{k=K+1}}{\mathop{\sum}}}c_{-k}e^{-i(\omega_{k}+\omega_{k_{0}})\vartheta
t}\varphi_{k}\\}\mathrm{d}z\,.$ (28)

Next, the idea is to integrate (28) with respect to the time $t$ and to
investigate the absolute value. Hence, we find that the right-hand side of

$\left|c_{k_{0}}\int_{L_{p_{1}}}^{L_{p_{2}}}\varphi_{k_{0}}\mathrm{d}z\right|t\leq\\\
2\left|\int_{0}^{t}\int_{L_{p_{1}}}^{L_{p_{2}}}\\{\overset{K}{\underset{\mathop{k=1,k\neq
k_{0}}}{\mathop{\sum}}}c_{k}e^{i(\omega_{k}-\omega_{k_{0}})\vartheta\tau}\varphi_{k}\\}\mathrm{d}z\mathrm{d}\tau\right|+\\\
+2\left|\int_{0}^{t}\int_{L_{p_{1}}}^{L_{p_{2}}}\\{\overset{K}{\underset{\mathop{k=1}}{\mathop{\sum}}}c_{-k}e^{-i(\omega_{k}+\omega_{k_{0}})\vartheta\tau}\varphi_{k}\\}\mathrm{d}z\mathrm{d}\tau\right|\,,$
(29)

where we used (27) to obtain an estimation for the sums from $k=K+1$ to
$k=\infty$, is bounded for all $t\geq 0$. Since for an appropriate choice of
the actuator-length it is ensured that the integral on the left-hand side
cannot vanish, the only possibility that inequality (29) holds for
$t\rightarrow\infty$ is that $c_{k_{0}}=0$ is valid. Thus, it is shown that
the only possible solution in $\mathcal{S}$ is the trivial one, which finally
proves the asymptotic stability of the observer error and therefore justifies
the application of the observer developed in [11]. Furthermore, in Figure (1),
the comparison of the string deflection $w(L,t)$ and the observer state
$\hat{w}(L,t)$ is depicted, where the tip of the string is moved from
$w(L,0)=0$ to $w(L,t_{end})=0.1$ and the observer state is initialised as
$\hat{w}(L,0)=0.1$.

$0$$2$$4$$6$$8$$10$$0$$5\cdot
10^{-2}$$0.1$$0.15$$t~{}(\text{s})$$w|_{L}~{}(\text{m})$$w|_{L}$$\hat{w}|_{L}$
Figure 1: Comparison of the string deflection $w(L,t)$ and the observer state
$\hat{w}(L,t)$.

##  V Conclusion and Outlook

In this paper, the asymptotic stability of an observer error of an in-domain
actuated vibrating string, where the observer has been developed in [11], was
investigated. First, we showed that the linear operator, which describes the
observer error as an abstract Cauchy problem, is the infinitesimal generator
of a contraction semigroup. Second, by means of LaSalle’s invariance principle
the asymptotic stability of the observer error was proven. In fact, by
choosing the length of the actuator properly, it was shown that the only
possible solution for $\dot{\tilde{\mathscr{H}}}=0$ is the trivial one, which
implies that the observer error tends to zero. Future-research tasks might
deal with the stability analysis of the closed loop obtained by the controller
design presented in [11], or even with the stability investigation of the
combination of controller and observer.

## References

  * [1] Z.-H. Luo, B.-Z. Guo, and O. Morgul, Stability and Stabilization of Infinite Dimensional Systems with Applications.  Springer, 1998.
  * [2] M. Miletić, D. Stürzer, and A. Arnold, “An Euler-Bernoulli beam with nonlinear damping and a nonlinear spring at the tip,” Discrete & Continuous Dynamical Systems, vol. 20, no. 9, pp. 3029–3055, 2015.
  * [3] D. Stürzer, A. Arnold, and A. Kugi, “Closed-loop Stability Analysis of a Gantry Crane with Heavy Chain,” International Journal of Control, vol. 91, no. 8, pp. 1931–1943, 2018.
  * [4] J. Henikl, J. Schröck, T. Meurer, and A. Kugi, “Infinit-dimensionaler Reglerentwurf für Euler-Bernoulli Balken mit Macro-Fibre Composite Aktoren,” at - Automatisierungstechnik, vol. 60, no. 1, pp. 10–19, 2012\.
  * [5] H. Ennsbrunner and K. Schlacher, “On the Geometrical Representation and Interconnection of Infinite Dimensional Port Controlled Hamiltonian Systems,” Proceedings of the 44th IEEE Conference on Decision and Control and the European Control Conf., no. 5263–5268, 2005.
  * [6] M. Schöberl and A. Siuka, “On the port-Hamiltonian representation of systems described by partial differential equations,” in Proceedings of the 4th IFAC Workshop on Lagrangian and Hamiltonian Methods for Non Linear Control, vol. 45, pp. 1–6, 2012.
  * [7] M. Schöberl and A. Siuka, “Jet bundle formulation of infinite-dimensional port-Hamiltonian systems using differential operators,” Automatica, vol. 50, no. 2, pp. 607–613, 2014.
  * [8] A. J. van der Schaft and B. Maschke, “Hamiltonian formulations of distributed parameter systems with boundary energy flow,” Journal of Geometry and Physics, vol. 42, no. 1-2, pp. 166–194, 2002.
  * [9] Y. Le Gorrec, H. J. Zwart, and B. Maschke, “Dirac structures and boundary control systems associated with skew-symmetric differential operators,” SIAM J. Control Optim., vol. 44, no. 5, pp. 1864–1892, 2005\.
  * [10] M. Schöberl and A. Siuka, “Analysis and Comparison of Port-Hamiltonian Formulations for Field Theories - demonstrated by means of the Mindlin plate,” in Proceedings of the European Control Conference (ECC), pp. 548–553, 2013.
  * [11] T. Malzer, J. Toledo, Y. Le Gorrec, and M. Schöberl, “Energy-Based In-Domain Control and Observer Design for Infinite-Dimensional Port-Hamiltonian Systems,” arXiv preprint arXiv:2002.01717, 2020.
  * [12] M. Schöberl and A. Siuka, “On Casimir Functionals for Field Theories in Port-Hamiltonian Description for Control Purposes,” in Proceedings of the 50th IEEE Conference on Decision and Control and European Control Conference (CDC-ECC), pp. 7759–7764, 2011.
  * [13] H. Rams and M. Schöberl, “On Structural Invariants in the Energy Based Control of Port-Hamiltonian Systems with Second-Order Hamiltonian,” in Proceedings of the American Control Conference (ACC), pp. 1139–1144, 2017\.
  * [14] A. Macchelli and C. Melchiorri, “Modeling and control of the Timoshenko beam. The distributed port Hamiltonian approach,” SIAM J. Control Optim., vol. 43, no. 2, pp. 743–767, 2004.
  * [15] A. Macchelli, Y. Le Gorrec, H. Ramirez, and H. Zwart, “On the Synthesis of Boundary Control Laws for Distributed Port-Hamiltonian Systems,” IEEE Trans. Autom. Control, vol. 62, no. 4, pp. 1700–1713, 2017.
  * [16] J. Toledo, H. Ramirez, Y. Wu, and Y. Le Gorrec, “Passive observers for distributed port-Hamiltonian systems,” in InProceedings of the 21st IFAC World Congress, Berlin, Germany, July 12-17, 2020 (accepted), 2019.
  * [17] M. Schöberl, H. Ennsbrunner, and K. Schlacher, “Modelling of piezoelectric structures - a Hamiltonian approach,” Mathematical and Computer Modelling of Dynamical Systems, vol. 14, no. 3, pp. 179–193, 2008\.
  * [18] M. Schöberl, Contributions to the Analysis of Structural Properties of Dynamical Systems in Control and Systems Theory: A Geometric Approach.  Shaker Verlag Aachen, 2014.
  * [19] H. Rams, M. Schöberl, and K. Schlacher, “Optimal Motion Planning and Energy-Based Control of a Single Mast Stacker Crane,” IEEE Transactions on Control Systems Technology, vol. 26, no. 4, pp. 1449–1457, 2018\.
  * [20] Z. Liu and S. Zheng, Semigroups Associated with Dissipative Systems.  Research Notes in Mathematics Series, Chapman and Hall/CRC, 1999.
  * [21] R. A. Adams and J. F. Fournier, Sobolev Spaces, vol. 140 of Pure and Applied Mathematics.  Academic Press, Inc., 2nd ed., 2003.
  * [22] W. Guo and B.-Z. Guo, “Parameter estimation and stabilisation for a one-dimensional wave equation with boundary output constant disturbance and non-collocated control,” International Journal of Control, vol. 84, no. 2, pp. 381–395, 2011.