%auto-ignore
\providecommand{\MainFolder}{..}
\documentclass[\MainFolder/Text.tex]{subfiles}

\begin{document}

\section{Basics of IBL-infinity-algebras
%for the \texorpdfstring{$\IBLInfty$-theory}{IBL-infinity-theory}
}
\allowdisplaybreaks
\label{Sec:Alg1}

%For the following definition, Definition~\ref{Def:Grading}, \ref{Def:SymAlgebra}, \ref{Def:Filtrations} and \ref{Def:Completion} are relevant.
\Correct[caption={DONE Bad picture},noline]{There migh be wrong dimensions on one side of the maurer cartan element. Compare to the section about filtrations. REMARK THAT THE DEFINITION NEEDS THE WEIGHT STRUCTURE OF THE BIALGEBRA. No Problem.}
\Add[caption={DONE New algebraic setting in Appendix},noline]{There is a new algebraic description of the iterated compatibility condition in the appendix.}
\begin{Definition}[Exterior algebra]\label{Def:ExtAlg}
Given a graded vector space $C$ over $\R$, we define the \emph{exterior algebra} over $C$ by
\[ \Ext C \coloneqq \Sym(C[1]). \]
The weight-$k$ component is denoted by $\Ext_k C$ and the weight-reduced part by~$\RExt C$. If $C$ is in addition filtered, then $\Ext_k C$ is filtered by the induced filtration and its completion is denoted by $\hat{\Ext}_k C$.
\end{Definition}

We have the concatenation product $\Prod : \Ext C \otimes \Ext C \rightarrow \Ext C$ and the shuffle coproduct $\CoProd: \Ext C \rightarrow \Ext C\otimes \Ext C$ defined~by
\begin{align*}
&\Prod(c_{11}\dots c_{1k} \otimes c_{21} \dots c_{2k'}) \coloneqq c_{11} \dots c_{1k} c_{21} \dots c_{2k'}\quad\text{and}\\[\jot]
&\CoProd(c_1 \dots c_k) \coloneqq \sum_{\substack{k_1,\,k_2 \ge 0\\ k_1 + k_2 = k}} \sum_{\sigma\in \Perm_{k_1, k_2}} \varepsilon(\sigma,c) c_{\sigma^{-1}_1} \dots c_{\sigma_{k_1}^{-1}}\otimes c_{\sigma_{k_1+1}^{-1}}\dots c_{\sigma_{k_1 + k_2}^{-1}}
\end{align*}
for all homogenous $c_{ij}$, $c_i \in C[1]$ and $k$, $k'\ge 0$, respectively, where $\Perm_{k_1, k_2}\subset \Perm_{k_1+k_2}$ denotes the set of shuffle permutations with blocks of lengths $k_1$ and $k_2$. These operations satisfy the relations of an \emph{associative bialgebra} (see \cite{Loday2012}):
\begin{equation}\label{Eq:Bialgebra}
\text{Assoc.~bialg.}\quad \left\{
\begin{aligned}
\Prod\circ (\Id\otimes \Prod) &= \Prod\circ (\Prod \otimes \Id), \\
(\Id\otimes \CoProd)\circ\CoProd &= (\CoProd\otimes \Id)\circ \CoProd, \\
\CoProd \circ \Prod &= (\Prod\otimes \Prod) \circ (\Id \otimes \tau\otimes \Id) \circ (\CoProd\otimes \CoProd).
\end{aligned} \right.
\end{equation}
Here $\tau: C_1 \otimes C_2 \rightarrow C_2 \otimes C_1$, $c_1\otimes c_2 \mapsto (-1)^{\Abs{c_1}\Abs{c_2}}c_2\otimes c_1$ denotes the \emph{twist map}.

We will use the bialgebra calculus ($\coloneqq$\,relations \eqref{Eq:Bialgebra}) to write down explicit formulas for the operations $\circ_{h_1, \dotsc, h_r}$ which were briefly introduced in \cite{Cieliebak2015}; these operations take symmetric maps $f_1$, $\dotsc$, $f_r$ and connect $h_1$, $\dotsc$, $h_r$ of their outputs to the inputs of a symmetric map $f$ in all possible ways, so that the result, which we denote by $f\circ_{h_1, \dotsc, h_r}(f_1, \dotsc,f_r)$, becomes a symmetric map again.

%In accordance with~\cite{Cieliebak2015}, one should think of a map $f: \Ext_k C \rightarrow \Ext_l C$ as of a Riemannian surface with $k$ ingoing and $l$ outcoming boundary components (\eqqcolon\,ends). The partial composition of two maps then corresponds to gluing of Riemannian surfaces at a given number of boundary components. This will be discussed once more Remark~\ref{Rem:SignConv}.

\begin{Definition}[Partial compositions] \label{Def:CircS}
Let $C$ be a graded vector space. For $i$, $j\ge 0$, we denote by
\begin{align*} \pi_i : \Ext C \longrightarrow \Ext_i C,& \quad \iota_i : \Ext_i C \longrightarrow \Ext C, \\
 \Id_i : \Ext_i C \longrightarrow \Ext_i C,& \quad \begin{aligned}[t]\tau_{i,j}: \Ext_i C\otimes \Ext_j C &\longrightarrow \Ext_j C \otimes \Ext_i C \end{aligned}
 \end{align*}
the components of the canonical projection $\pi$, the canonical inclusion $\iota$, the identity $\Id$ and the twist map $\tau$, respectively. We also set
\[ \CoProd_{i,j} \coloneqq (\pi_i \otimes \pi_j)\circ \CoProd\circ \iota_{i+j} \quad\text{and}\quad \Prod_{i,j}\coloneqq \pi_{i+j}\circ \Prod\circ (\iota_i \otimes \iota_j). \]
For $k'$, $k_1$, $l'$, $l_1\ge 0$, let $f: \Ext_{k'}C \rightarrow \Ext_{l'} C$ and $f_1: \Ext_{k_1} C \rightarrow \Ext_{l_1} C$ be linear maps, and let $0 \le h \le \min(k', l_1)$. We set
\[k \coloneqq k' + k_1 - h \quad\text{and}\quad l \coloneqq l' + l_1 - h \]
and define the \emph{composition of $f$ and $f_1$ at $h$ common outputs} to be the linear map $f \circ_h f_1: \Ext_k C \rightarrow \Ext_l C$ given by
\begin{equation}\label{Eq:CompositionSimple}
f \circ_h f_1 \coloneqq \begin{multlined}[t]\Prod_{l', l_1 - h} \circ (f\otimes \Id_{l_1-h})\circ (\Prod_{h, k'-h}\otimes \Id_{l_1-h})\circ (\Id_{h} \otimes \tau_{\rule{0pt}{7pt}l_1-h,k'-h}) \\[\jot] \circ (\CoProd_{h,l_1-h}\otimes \Id_{k'-h}) \circ (f_1 \otimes \Id_{k'-h} ) \circ \CoProd_{k_1, k'-h}. \end{multlined}
\end{equation}
More generally, we define the composition of $f: E_{k'}\rightarrow E_{l'}$ with $r\ge 1$ linear maps $f_{i}: E_{k_i} \rightarrow E_{l_i}$ with $k_i$, $l_i \ge 0$ for $i=1$,~$\dotsc$, $r$ at $0 \le h_i \le l_i$ common outputs such that $h\coloneqq h_1 + \dotsb + h_r \le k'$ as follows. We set
\[ k\coloneqq k' + k_1 + \dotsb + k_r-h\quad\text{and}\quad l\coloneqq l' +  l_1 + \dotsb + l_r  - h \]
and define $f\circ_{h_1, \dotsc, h_r}(f_1, \dotsc, f_r): \Ext_k C \rightarrow \Ext_l C$ by\ToDo[caption={DONE Add the other composition},noline]{Add the definition of $(f_1,\dotsc,f_r)\circ_{h_1,\dotsc,h_r} f$. IT IS DONE IN THE APPENDIX.}
\begin{equation} \label{Eq:CompositionFormula}
\begin{aligned}
&f\circ_{h_1, \dotsc, h_r}(f_1, \dotsc, f_r)\\
&\qquad \coloneqq \begin{multlined}[t]
\Prod\circ (f\otimes \Id)\circ(\Prod\otimes\Id)\circ(\Id\otimes \tau) \\[\jot] \circ \big(\big[(\Prod^{(r)}\otimes \Prod^{(r)})\circ (F_{h_1,\dotsc,h_r} \otimes \Id^{\otimes r})\circ \sigma_r\circ \CoProd^{\otimes r}\big] \otimes \Id \big) \\[\jot] \circ (f_1\otimes \dotsb \otimes f_r\otimes \Id)\circ\CoProd^{(r+1)},
\end{multlined}\end{aligned}
\end{equation}
where we have:
\begin{itemize}
\item The operation $\Prod^{(r)}$ is the ``product with $r$ inputs'' and the operation $\CoProd^{(r)}$ the ``coproduct with $r$ outputs''; they are defined~by
\begin{align*}
\Prod^{(r)} &\coloneqq \Prod(\Id \otimes \Prod)\dotsb(\Id^{\otimes r-2} \otimes \Prod), & \Prod^{(1)}&\coloneqq \Id,\\
\CoProd^{(r)} &\coloneqq (\Id^{\otimes r-2} \otimes \CoProd)\dotsb(\Id \otimes \CoProd)\CoProd, &\CoProd^{(1)}&\coloneqq \Id.
\end{align*}

\item $F_{h_1,\dotsc, h_r} \coloneqq (\iota_{h_1}\pi_{h_1}) \otimes \dotsb \otimes (\iota_{h_r}\pi_{h_r})$.%is the ``filter''.
\item The permutation $\sigma_r \in \Perm_{2r}$ is given by  \Add[caption={DONE Better definition!!!}]{This needs a better definition of $\sigma_r$!!!}
\[\sigma_r: (1,2,3,4\dotsc, 2r-1, 2r) \longmapsto (1,r+1,2,r+2, \dotsc, r, 2r).\]
\item The symbols $f$ and $f_i$ inside the formula denote the \emph{trivial extensions} of $f$ and $f_i$, respectively; we extend a linear map $f: E_{k'} C \rightarrow E_{l'} C$ trivially to $f: \Ext C \rightarrow \Ext C$ by defining $f(\Ext_i C)=0$ for $i\neq k'$.
\end{itemize}
\end{Definition}

\begin{Remark}[On partial compositions]\phantomsection\label{Rem:Compositions}
\begin{RemarkList}
\item Defining $f\circ_{h_1, \dotsc, h_r}(f_1, \dotsc, f_r): \Ext_k C \rightarrow \Ext_l C$ using~\eqref{Eq:CompositionFormula} makes sense because the right hand side is a trivial extension of its component $\Ext_k C \rightarrow \Ext_l C$. In fact, all $\Prod$, $\CoProd$, $\pi$, $\iota$ in \eqref{Eq:CompositionFormula} can be replaced with $\Prod_{i,j}$, $\CoProd_{i,j}$, $\pi_i$, $\iota_i$ for unique $i$, $j$, so that trivial extensions do not have to be used at all. In this way, it can be seen that \eqref{Eq:CompositionSimple} is indeed a special case of~\eqref{Eq:CompositionFormula}.
\item If $h = k' = l_1$, then $f \circ_{h} f_1 = f\circ f_1$.
\item It holds $f \circ_0 f_1 = (-1)^{\Abs{f}\Abs{f_1}} f_1 \circ_0 f$ and
\[ f\circ_{h_1,\dotsc,h_r}(f_1,\dotsc,f_r) = \varepsilon(\sigma,f) f\circ_{h_{\sigma_1^{-1}},\dotsc,h_{\sigma_r^{-1}}}(f_{\sigma_1^{-1}},\dotsc,f_{\sigma_r^{-1}}). \]
\item Consider the (``non-trivial'') extension $\hat{f}\coloneqq \Prod(f\otimes \Id)\CoProd: \Ext C \rightarrow \Ext C$ and the symmetric product $f_1 \odot \dotsb \odot f_r \coloneqq \Prod^{(r)}(f_1 \otimes \dotsb \otimes f_r)\CoProd^{(r)}: \Ext C \rightarrow \Ext C$. The following formulas from~\cite{Cieliebak2015} hold:
\begin{equation} \label{Eq:Mix}
\begin{aligned}
f\circ_{h_1,\dotsc,h_{r-1},0}(f_1,\dotsc, f_r) &= f\circ_{h_1,\dotsc, h_{r-1}}(f_1,\dotsc, f_{r-1}) \odot f_r, \\
\hat{f} \circ \hat{f}_1 &= \sum_{h = 0}^{\min(k',l_1)} \widehat{f\circ_h f_1}, \\
   \hat{f} \circ (f_1 \odot \dotsb \odot f_r) &= \sum_{\substack{h_1, \dotsc, h_r \ge 0 \\ h_1 + \dotsb + h_r = k'}} f\circ_{h_1,\dotsc, h_r}(f_1,\dotsc, f_r).
\end{aligned}
\end{equation}
We also have the ``weak associativity''
\begin{equation}\label{Eq:WeakAssoc}
\qquad\qquad \mathclap{\sum_{\substack{0 \le h_2 \le \min(f_3^-, f_2^+) \\
0 \le h_1 \le \min(f_1^+,f_2^- + f_3^- - h_2) \\
h_1 + h_2 = h}}}\quad\qquad f_1 \circ_{h_1} (f_2 \circ_{h_2} f_3) = \qquad\quad \mathclap{\sum_{\substack{0 \le h_1 \le \min(f_1^+,f_2^-) \\ 0 \le h_2 \le \min(f_1^+ + f_2^+ - h_1, f_3^-) \\ h_1 + h_2 = h}}}\qquad\quad (f_1 \circ_{h_1} f_2) \circ_{h_2} f_3
\end{equation}
for every $0\le h \le \min(k_1 + k_2 + k_3, l_1 + l_2 + l_3)$, where $f^+$ denotes the number of inputs and $f^-$ the number of outputs of $f$. The weak associativity of $\circ_h$ can be proven using the associativity of $\,\hat{\cdot}$ and the second relation of \eqref{Eq:Mix}.
\item We refer to Section~\ref{Sec:CompConvA} of Appendix~\ref{App:IBLMV} for a thorough treatment of partial compositions. We show there that $\circ_{h_1,\dotsc,h_r}$ can be defined on maps on any connected weight-graded bialgebra using natural bilinear operations $\SquareComp_A$ on polynomials in the convolution product. In Proposition~\ref{Prop:PartCompositions} in the appendix, we prove the relations above.\qedhere
\end{RemarkList}
\end{Remark}

If $C$ is filtered by a decreasing filtration, then the bialgebra operations extend continuously to
\begin{align*}
\Prod: \hat{\Ext}_{k_1} C \COtimes \hat{\Ext}_{k_2} C &\longrightarrow \hat{\Ext}_{k_1+k_2} C \quad \text{and}\\
\CoProd: \hat{\Ext}_k C &\longrightarrow \bigoplus_{\substack{l_1, l_2 \ge 0 \\ l_1 + l_2 = k}} \hat{\Ext}_{l_1}C\COtimes\hat{\Ext}_{l_2}C
\end{align*}
for all $k_1$, $k_2$, $k\in \N_0$ because they preserve the filtration degree (see~\cite{Fresse} for a similar construction). Next, if $f_1: \hat{\Ext}_{k_1}C \rightarrow \hat{\Ext}_{l_1}C$ and $f_2: \hat{\Ext}_{k_2}C\rightarrow \hat{\Ext}_{l_2}C$ have finite filtration degrees, then $f_1 \otimes f_2: \hat{\Ext}_{k_1} C \otimes \hat{\Ext}_{k_2} C \rightarrow \hat{\Ext}_{l_1}C\otimes\hat{\Ext}_{l_2}C$ has finite filtration degree too, and hence it extends continuously to $f_1 \otimes f_2: \hat{\Ext}_{k_1} C\COtimes \hat{\Ext}_{k_2} C \rightarrow \hat{\Ext}_{l_1}C\COtimes\hat{\Ext}_{l_2}C$.
Using these facts, we can canonically extend Definition~\ref{Def:CircS} to maps $f: \hat{\Ext}_{k'} C \rightarrow \hat{\Ext}_{l'} C$ and $f_i: \hat{\Ext}_{k_i}C \rightarrow \hat{\Ext}_{l_i}C$ of finite filtration degrees. The resulting map $f\circ_{h_1,\dotsc,h_r}(f_1,\dotsc,f_r): \hat{\Ext}_k C \rightarrow \hat{\Ext}_l C$ will have finite filtration degree too. Moreover, the formulas in Remark~\ref{Rem:Compositions} will still hold.%The details will be given in~\cite{MyPhD}.

We will now rephrase the definitions of an $\IBLInfty$-algebra, a Maurer-Cartan element and twisted operations from~\cite{Cieliebak2015} in terms of~$\circ_{h_1, \dotsc, h_r}$.
% !!!! It can also be seen graphically from Figure \ref{Fig:Surfaces}.!!!!
% That the relations are satisfied.
%The following is a combination of Definitions 8.1 and 2.3 and Lemma 2.5 in \cite{Cieliebak2015}:
\begin{Def}[$\IBLInfty$-algebra] \label{Def:IBLInfty} Let $C$ be a graded vector space equipped with a decreasing filtration, and let $d\in \Z$ and $\gamma\ge 0$ be fixed constants. An \emph{$\IBLInfty$-algebra of bidegree $(d,\gamma)$} on~$C$ is a collection of linear maps $\OPQ_{klg}: \hat{\Ext}_k C \rightarrow \hat{\Ext}_l C$ for all $k,l\ge 1$, $g\ge 0$ which are homogenous, of finite filtration degree and satisfy the following conditions:
%\marginnote{Discuss $\circ_s$ once more. Make a remark how $\circ_s$ is defined? I actually do not need it anywhere but $q_{120}^m$ and Appendix. Does filtered $\IBLInfty$-algebra with the grading filtration gives this $\IBLInfty$? What is the filtration degree?}
% The filtration degree of the canonical dIBL with respect to the filtration by weights is 2. The pushforward Maurer-Cartan element satisfies the filtration condition strictly. All maps p_klg, f_klg constructed by summation over ribbon graphs satisfy the filtration condition with =.
\begin{enumerate}[label=\arabic*)]
\item $\Abs{\OPQ_{klg}} = - 2d(k+g-1) - 1$.
\item $\Norm{\OPQ_{klg}} \ge \gamma \chi_{klg}$,
where $\chi_{klg}\coloneqq2-2g-k-l$. %(cf. $e$ in \eqref{Eq:EulerFormula})
\item The \emph{$\IBLInfty$-relations} hold: for all $k,l\ge 1$, $g\ge 0$, we have
\begin{equation} \label{Eq:IBLInfRel}
\sum_{h=1}^{g+1} \sum_{\substack{k_1, k_2, l_1, l_2 \ge 1 \\ g_1, g_2 \ge 0 \\k_1 + k_2 = k + h \\ l_1 + l_2 = l+ h\\ g_1 + g_2 = g+ 1 -h }} \OPQ_{k_2 l_2 g_2} \circ_h \OPQ_{k_1 l_1 g_1} = 0.
\end{equation}
%where the operator $\circ_s$ connects exactly $s$ outputs of $\OPQ_{k_1 l_1 g_1}$ to exactly $s$ inputs of $\OPQ_{k_2 l_2 g_2}$ in all possible ways producing a map $\widehat{E}_k C \rightarrow \widehat{E}_l C$.
\end{enumerate}
We denote a given $\IBLInfty$-algebra structure on $C$ by $\IBLInfty(C)$; i.e., we write $\IBLInfty(C)=(C,(\OPQ_{klg}))$.
%We can also write $\IBLInfty(C) = (\OPQ_{klg})$, where the notation $(\OPQ_{klg})$ denotes the collection of $\OPQ_{klg}$ for all $k$, $l\ge 1$, $g\ge 0$.
%If the filtration is trivial, i.e., $\Filtr_\lambda C = 0$ for all $\lambda\in \R$, and hence $\hat{\Ext}_k C = \Ext_k C$ for all $k\ge 1$ and the condition 2) holds trivially, we call $\IBLInfty(C)$ simply an \emph{$\IBLInfty$-algebra} of degree $d$ on $C$.

If $\OPQ_{klg} \equiv 0$ for all $(k,l,g)\neq (1,1,0)$, $(2,1,0)$, $(1,2,0)$, then we call $\IBLInfty(C)$ a \emph{$\dIBL$-algebra} and denote it by $\dIBL(C)$. If in addition $\OPQ_{110} \equiv 0$, then we have an \emph{$\IBL$-algebra} $\IBL(C)$.

If the operations on the completed exterior powers~$\hat{\Ext}_k C$ arise as continuous extensions of operations $\OPQ_{klg}: \Ext_k C \rightarrow \Ext_l C$, then we call the $\IBLInfty$-algebra \emph{completion-free} and denote $C$ together with the operations $\OPQ_{klg}: \Ext_k C \rightarrow \Ext_l C$ by $\ShortIBLInfty(C)$.
\end{Def}
%We note that filtered algebras are defined in Definition~\ref{Def:FiltAlg} in the appendix and that they are compared to the definition above in Remark~\ref{Rem:FiltrStr}.

The acronym $\IBL$ stands for an \emph{involutive Lie bialgebra.} It follows namely from the $\IBLInfty$-relations \eqref{Eq:IBLInfRel} that for $\IBL(C) = (C,\OPQ_{210},\OPQ_{120})$ the following holds:
\begin{equation*}
%\label{Eq:IndIBL}
\raisebox{2ex}{$\text{Lie bialg.}\;\left\{\rule{0pt}{5ex}\right.$}\;
\begin{aligned}
   0&= \OPQ_{210}\circ_1 \OPQ_{210} &&\leftarrow\text{Jacobi id.}\\
   0 &= \OPQ_{120} \circ_1 \OPQ_{120} &&\leftarrow\text{co-Jacobi id.}\\
   0 &= \OPQ_{120}\circ_1 \OPQ_{210} + \OPQ_{210}\circ_1 \OPQ_{120}&&\leftarrow\text{Drinfeld id.} \\
   0 &= \OPQ_{210} \circ_2 \OPQ_{120} &&\leftarrow\text{Involutivity}
\end{aligned}
\end{equation*}
The acronym $\dIBL$ stands for a \emph{differential involutive Lie bialgebra} --- an involutive Lie bialgebra together with a differential (a boundary operator in our case) such that the bracket and cobracket are chain maps.

\begin{Proposition}[Odd degree shift of an $\IBL$-algebra]\label{Prop:ClasModIBL}
Let $(C,\OPQ_{210}, \OPQ_{120})$ be an $\IBL$-algebra of degree $d$ from Definition~\ref{Def:IBLInfty}, and let $\tilde{\OPQ}_{210} : C^{\otimes 2} \rightarrow C$ and $\tilde{\OPQ}_{120}: C \rightarrow C^{\otimes 2}$ be the linear maps defined by
\begin{equation}\label{Eq:ClasModIBL}
\begin{aligned}
\SuspU \tilde{\OPQ}_{210}(x_1 \otimes x_2) &\coloneqq \OPQ_{210}(\pi(\SuspU^2 x_1 \otimes x_2)) \quad\text{and} \\
\SuspU^2 \tilde{\OPQ}_{120}(x) &\coloneqq \iota(\OPQ_{120}(\SuspU x))
\end{aligned}
\end{equation}
for all $x_1$, $x_2$, $x\in C$, where $\iota: \Sym_2(C[1]) \rightarrow C[1]^{\otimes 2}$ is the section of $\pi: C[1]^{\otimes 2} \rightarrow \Sym_2(C[1])$ from Definition~\ref{Def:SymAlgebra} and~$\SuspU$ is a formal symbol of degree $\Abs{\SuspU} = -1$. Then the degrees satisfy
\[ \Abs{\tilde{\OPQ}_{210}} = \Abs{\OPQ_{210}} - 1 = -2d - 2\quad\text{and}\quad\Abs{\tilde{\OPQ}_{120}} = \Abs{\OPQ_{120}} + 1 = 0, \]
the operations $\tilde{\OPQ}_{210}$ and $\tilde{\OPQ}_{120}$ are graded antisymmetric, i.e., we have
\[ \tilde{\OPQ}_{210} \circ\tau = - \tilde{\OPQ}_{210}\quad\text{and}\quad\tau \circ \tilde{\OPQ}_{120} = - \tilde{\OPQ}_{120} \]
for the twist map $\tau$, and the relations
\begin{align*}
%\label{Eq:ClassicIBL}
0&=\tilde{\OPQ}_{210}\circ (\tilde{\OPQ}_{210}\otimes \Id)\circ (\Id^{\otimes 3}+ t_3 + t_3^2), \\
0&=(\Id^{\otimes 3}+t_3 + t_3^2)\circ (\tilde{\OPQ}_{120}\otimes\Id)\circ \tilde{\OPQ}_{120}, \\
0&= x_1 \cdot \tilde{\OPQ}_{120}(x_2) - (-1)^{ x_1 x_2} x_2 \cdot \tilde{\OPQ}_{120}(x_1) - \tilde{\OPQ}_{120}(\tilde{\OPQ}_{210}(x_1,x_2)), \\
0& = \tilde{\OPQ}_{210} \circ \tilde{\OPQ}_{120},
\end{align*}
hold for all $x_1$, $x_2\in C$. Here, $t_3 \in \Perm_3$ denotes the cyclic permutation with $t_3(1) = 2$ acting on $C^{\otimes 3}$, and we define
\[ x\cdot (y_1 \otimes y_2) \coloneqq \tilde{\OPQ}_{210}(x,y_1)\otimes y_2 + (-1)^{ x y_1} y_1 \otimes \tilde{\OPQ}_{210}(x,y_2) \]
for all $x$, $y_1$, $y_2 \in C$.
%On the other hand, starting with~$\tilde{\OPQ}_{210}$ and $\tilde{\OPQ}_{120}$ satisfying the conditions above and defining $\OPQ_{210}: \Ext_2 C \rightarrow \Ext_1 C$ and $\OPQ_{120}: \Ext_1 C \rightarrow \Ext_2 C$ by \eqref{Eq:ClasModIBL}, we get an $\IBL$-algebra $(C,\OPQ_{210},\OPQ_{120})$ according to Definition~\ref{Def:IBLInfty}.
\end{Proposition}

\begin{proof}
The proof is a lengthy but straightforward computation.
\end{proof}

Consider the \emph{sign-action of $\Perm_k$} on $C^{\otimes k}$ given by $\sigma \mapsto \bar{\sigma}$, where
\[ \bar{\sigma}(c_1\otimes\dotsb\otimes c_k)\coloneqq(-1)^\sigma\varepsilon(\sigma,c)c_{\sigma_1^{-1}}\otimes\dotsb\otimes c_{\sigma_k^{-1}} \]
for all $c_1$, $\dotsc$, $c_k\in C$ and $\sigma\in \Perm_k$. We define
\[ \Lambda C \coloneqq \bigoplus_{k=0}^\infty \Lambda_k C\quad\text{with}\quad \Lambda_k C \coloneqq C^{\otimes k}/\sim, \]
where $c\sim \bar{\sigma}(c)$ for all $c\in C^{\otimes k}$ and $\sigma\in \Perm_k$. It is easy to see that the degree-shift map $\theta^{\otimes k}: c_1\otimes \dotsb \otimes c_k \in C^{\otimes k} \mapsto \varepsilon(c,\theta)(\theta c_1)\otimes\dotsb\otimes(\theta c_k)\in C[1]^{\otimes k}$ is equivariant with respect to the sign-action of $\Perm_k$ on $C^{\otimes k}$ and the standard action of $\Perm_k$ on $C[1]^{\otimes k}$ for all $k$, and thus it induces an isomorphism of vector spaces $\Lambda C$ and $\Ext C$. We use the following notation:
\[\begin{tikzcd}
 \OPQ_{klg}: \hat{\Ext}_k C \arrow{r} \arrow{d}{\theta^{\otimes k}} & \hat{\Ext}_l C \arrow{d}{\theta^{\otimes l}} \\
 \tilde{\OPQ}_{klg}: \hat{\Lambda}_k C \arrow{r} & \hat{\Lambda}_l C.
\end{tikzcd}\]
In fact, $\OPQ_{klg}$ and $\tilde{\OPQ}_{klg}$ are related precisely by the degree shift \eqref{Eq:DegreeShiftConvII}.

\begin{figure}[t]
\centering
\begin{subfigure}{\textwidth}
\centering
\input{\GraphicsFolder/ibl.tex}
\caption{The term $\OPQ_{k_2 l_2 g_2} \circ_h \OPQ_{k_1 l_1 g_1}$ in the $\IBLInfty$-equation \eqref{Eq:IBLInfRel}.}
\end{subfigure}
\par\bigskip
\begin{subfigure}{\textwidth}
\centering
\input{\GraphicsFolder/MC.tex}
\caption{The term $\OPQ_{k' l' g'}\circ_{h_1,\dotsc,h_r} (\PMC_{l_1 g_1},\dotsc,\PMC_{l_r g_r})$ in the Maurer-Cartan equation \eqref{Eq:MaurerCartanEquation}. We remark that the contour of the surface corresponding to $\OPQ_{k'l'g'}$ starts on the left and continues to the right along the dotted line behind the two trivial cylinders.}
\end{subfigure}
\par\bigskip
\begin{subfigure}{\textwidth}
\centering
\input{\GraphicsFolder/twisted.tex}
\caption{The term $\OPQ_{k' l' g'}\circ_{l_1,\dotsc, l_r} (\PMC_{l_1 g_1},\dotsc,\PMC_{l_r g_r})$ in the twisted operation \eqref{Eq:TwistedOperations}. The remark to Figure (b) applies too.}
\end{subfigure}
\caption[$\IBLInfty$-relations, Maurer-Cartan equation and twisting graphically.]{Graphical representation of compositions appearing in Definitions \ref{Def:IBLInfty}, \ref{Def:MaurerCartan} and \ref{Def:TwistedOperations} as gluing of connected Riemannian surfaces. The figure is to be read from the top  to the bottom, the empty cylinder represents the identity, and the resulting surface must be connected. We emphasize that the gluing is not associative (c.f., weak associativity \eqref{Eq:WeakAssoc}).}
\label{Fig:Surfaces}
\end{figure}
%
%\noindent The following is a combination of Definition 9.1 and Lemma 2.9 in \cite{Cieliebak2015}:
%
\begin{Def}[Maurer-Cartan element] \label{Def:MaurerCartan}
A \emph{Maurer-Cartan element} for an $\IBLInfty$-algebra $\IBLInfty(C)$ from Definition~\ref{Def:IBLInfty} is a collection $\PMC \coloneqq (\PMC_{lg})_{l\ge 1, g\ge 0}$ of elements $\PMC_{lg}\in \hat{\Ext}_l C$ which are homogenous, of finite filtration degree and satisfy the following conditions:
\begin{enumerate}[label=\arabic*)]
\item $\Abs{\PMC_{lg}} = - 2d(g-1)$.
\item $\Norm{\PMC_{lg}}\ge\gamma \chi_{0lg}$ with $>$ for $(l,g)=(1,0)$, $(2,0)$ (see Definition~\ref{Def:IBLInfty} for~$\chi_{klg}$).
\item The \emph{Maurer-Cartan equation} holds: for all $l\ge 1$, $g\ge 0$, we have
\begin{equation} \label{Eq:MaurerCartanEquation}
\begin{aligned}
\sum_{r\ge 1}\frac{1}{r!}  \sum_{\substack{l', k', l_1, \dotsc, l_r\ge 1 \\ g', g_1, \dotsc, g_r \ge 0 \\ h_1, \dotsc, h_r \ge 1 \\
l_1 + \dotsb + l_r + l' - k'= l \\ g_1 + \dotsb + g_r + g' +  k' = g + r \\ h_1 + \dotsb + h_r - k' =0 } } \OPQ_{k' l' g'}\circ_{h_1,\dotsc,h_r} (\PMC_{l_1 g_1},\dotsc,\PMC_{l_r g_r}) = 0,
\end{aligned}
\end{equation}
where we view $\PMC_{lg}$ as a linear map $\PMC_{lg}: \hat{\Ext}_0 C = \R \rightarrow \hat{\Ext}_l C$ with $\PMC_{lg}(1) = \PMC_{lg}$.
%where $\odot$ is the symmetric product of symmetric maps, and $\circ_{s_1,\dotsc,s_r}$ denotes the part of the composition with exactly $s_i$ outputs of $\PMC_{l_i g_i}$ connected to exactly $s_i$ inputs of $\OPQ_{klg}$ in all possible ways so that the result is symmetric.

\end{enumerate}
\end{Def}

% \noindent The following comes from Proposition 9.3 and its proof \cite{Cieliebak2015}:

\begin{Def}[Twisted operations] \label{Def:TwistedOperations}
In the setting of Definition~\ref{Def:MaurerCartan}, the \emph{twisted operations} $\OPQ_{klg}^\PMC: \hat{\Ext}_k C\rightarrow \hat{\Ext}_l C$ for $k,l\ge 1$, $g\ge 0$ are defined by
\begin{equation}\label{Eq:TwistedOperations}
 \OPQ_{klg}^\PMC =\sum_{r\ge 0} \frac{1}{r!} \sum_{\substack{k', l', l_1, \dotsc, l_r \ge 1 \\ g', g_1, \dotsc, g_r \ge 0\\ h_1, \dotsc, h_r \ge 1 \\
%k' \ge k,\,l'\le l \\
l_1 + \dotsb + l_r + l' - k' = l-k \\ g_1 + \dotsb +g_r + g' + k' = g + r + k \\ h_1 + \dotsb + h_r - k' = -k}} \OPQ_{k' l' g'}\circ_{h_1,\dotsc, h_r} (\PMC_{l_1 g_1},\dotsc,\PMC_{l_r g_r}).
\end{equation}
In \cite[Proposition~9.3]{Cieliebak2015}, they prove that $(\OPQ_{klg}^\PMC)_{k,l\ge 1, g\ge 0}$ is again an $\IBLInfty$-algebra of bidegree $(d,\gamma)$ on $C$ --- \emph{the twisted $\IBLInfty$-algebra}.  We denote it by $\IBLInfty^\PMC(C)$.
\end{Def}

Let $(\OPQ_{klg})$ be an $\IBLInfty$-algebra on $C$. The boundary operator $\OPQ_{110}: C[1] \rightarrow C[1]$ induces the boundary operator $\Bdd_k : \Ext_k C \rightarrow \Ext_k C$ for every $k\in \N$ (see \eqref{Eq:BddExt}). Because of the finite filtration degree, $\Bdd_k$ continuously extends to $\Bdd_k: \hat{\Ext}_k C \rightarrow \hat{\Ext}_k C$.
%, where we used that $\hat{\Ext}_k \hat{C} \simeq \hat{\Ext}_k C$ (see Remark~\ref{Rem:ComplTens}).
The following is easy to see using \eqref{Eq:CompositionSimple}:
\[\begin{aligned}
 \OPQ_{klg} \circ_1 \OPQ_{110} &= \OPQ_{klg} \circ \Bdd_k, \\
 \OPQ_{110} \circ_1 \OPQ_{klg} &= \Bdd_l \circ \OPQ_{klg}.
\end{aligned}\]
Because $\OPQ_{klg}$ are odd ($\coloneqq$\,have odd degree), we have
\[ \begin{aligned}
  [\Bdd,\OPQ_{klg}] &\coloneqq \Bdd_l \circ \OPQ_{klg} - (-1)^{\Abs{\Bdd}\Abs{\OPQ_{klg}}} \OPQ_{klg}\circ \Bdd_k \\
   &= \Bdd_l \circ \OPQ_{klg} + \OPQ_{klg}\circ \Bdd_k \\
   &= \OPQ_{110}\circ_1 \OPQ_{klg} + \OPQ_{klg}\circ_1 \OPQ_{110}.
  \end{aligned}\]
With this notation, the $\IBLInfty$-relations \eqref{Eq:IBLInfRel} for
$\OPQ_{210}: \hat{\Ext}_2 C \rightarrow \hat{\Ext}_1 C$ and $\OPQ_{120}: \hat{\Ext}_1 C \rightarrow \hat{\Ext}_2 C$ become $[\Bdd,\OPQ_{210}] = 0$ and $[\Bdd,\OPQ_{120}] = 0$, respectively. If moreover the canonical maps $\Ext_k \H(\hat{C},\tilde{\OPQ}_{110}) \rightarrow \H(\hat{\Ext}_k C, \Bdd_k)$ induce the isomorphisms $\hat{\Ext}_k \H(\hat{C},\tilde{\OPQ}_{110})  \simeq \H(\hat{\Ext}_k C, \Bdd_k)$ for $k=1$, $2$, e.g., when Proposition~\ref{Prop:Kuenneth} holds, then we obtain the maps
\[ \OPQ_{210}: \hat{\Ext}_2\H(\hat{C},\tilde{\OPQ}_{110})  \rightarrow \hat{\Ext}_1\H(\hat{C},\tilde{\OPQ}_{110}) \quad \text{and}\quad \OPQ_{120}: \hat{\Ext}_1\H(\hat{C},\tilde{\OPQ}_{110})  \rightarrow \hat{\Ext}_2\H(\hat{C},\tilde{\OPQ}_{110}), \]
and $(\H(\hat{C},\tilde{\OPQ}_{110}),\OPQ_{210},\OPQ_{120})$ becomes an $\IBL$-algebra according to Definition~\ref{Def:IBLInfty} --- the \emph{induced $\IBL$-algebra on homology}.

\begin{Definition}[Homology]\label{Def:HomIBL}
We define the homology of an $\IBLInfty$-algebra $\IBLInfty(C)$ by
\[ \HIBL(C)[1] \coloneqq \H(\hat{C}[1], \OPQ_{110}). \]
It is a graded vector space with the induced filtration. If $\PMC$ is a Maurer-Cartan element for $\IBLInfty(C)$, we denote by $\HIBL^\PMC(C)$ the homology of $\IBLInfty^\PMC(C)$.
\end{Definition}

%These relations should be understood like the claim that $\OPQ_{210}\circ_1 \OPQ_{210}: \hat{\Ext}_3 C \rightarrow \hat{\Ext}_1 C$ induces the zero map $\HIBL_3(C) \rightarrow \HIBL_1(C)$, for example.
%It is an exercise to check that the first three relations of \eqref{Eq:IndIBL} are ``algebraically'' equivalent to \eqref{Eq:Bialgebra} (i.e., ignoring the completions and using just \eqref{Eq:CompositionSimple}) under the replacement $\Prod\mapsto \OPQ_{210}$, $\CoProd\mapsto \OPQ_{120}$ (notice that $\OPQ_{210}$, $\OPQ_{120}$ are odd whereas $\Prod$, $\CoProd$ even).
\begin{Remark}[Weak $\IBLInfty$-algebras and $\mathrm{BV}$-formalism]\phantomsection\label{Rem:BVForm}
\begin{RemarkList}
\item A possible generalization of the $\IBLInfty$-theory is to allow $k=0$ and $l=0$.
Such structures would be called \emph{weak $\IBLInfty$-algebras} while the structures from this section \emph{strict $\IBLInfty$-algebras.}
In fact, one does not need filtrations and completions to deal with the category of strict $\IBLInfty$-algebras unless deformations (twisting) are considered.
On the other hand, one needs filtrations and completions for the definition of a morphism of weak $\IBLInfty$-algebras already.
We refer to Appendix~\ref{App:IBLMV} for more details.
\item Let $\CExt C[[\hbar]]$, resp.~$\CExt C((\hbar))$ be the spaces of formal power, resp.~Laurent series in the variable~$\hbar$ of degree $\Abs{\hbar} = 2d$ with coefficients in $\Ext C$ completed with respect to a suitable completion.
%\footnote{Note that $\Ext C$ has two filtrations $\F^1_\lambda C$ and $\F^2_\lambda C$: the filtration induced from $C$ and the filtration by weights, respectively. In \cite{Cieliebak2015}, they take the combined filtration $\F^1_\lambda C + \F^2_\lambda C$. We will discuss some variations in~\cite{MyPhD}.}
Operations of an $\IBLInfty$-algebra on $C$ can be encoded in a degree~$-1$ operator $\BVOp: \CExt C[[\hbar]] \rightarrow \CExt C[[\hbar]]$ called the \emph{$\mathrm{BV}$-operator,} while the data of a Maurer-Cartan element~$(\PMC_{lg})$ give rise to an element $e^{\PMC}\in \CExt C((\hbar))$. The prescriptions are
\[ \BVOp \coloneqq \sum_{i\ge 0}\BVOp_{i+1} \hbar^{i}\quad\text{and}\quad e^{\PMC} \coloneqq \sum_{j\in \Z} (e^{\PMC})_j \hbar^{j}, \]
where $\BVOp_i$ and $(e^\PMC)_j$ for $i\ge 1$, $j\in \Z$ are defined by
\begin{align*}
\BVOp_i & \coloneqq \sum_{\substack{k\ge 1, g\ge 0 \\k+g=i}} \sum_{l\ge 1} \hat{\OPQ}_{klg}\quad\text{and} \\
(e^{\PMC})_j &\coloneqq \sum_{r=0}^\infty \frac{1}{r!} \sum_{\substack{g_1, \dotsc, g_r \ge 0 \\ g_1 + \dotsb +g_r - r= j }} \sum_{l_1, \dotsc, l_r\ge 1} \PMC_{l_1 g_1} \odot \dotsb \odot \PMC_{l_r g_r}.
\end{align*}
It can be shown that the $\IBLInfty$-relations~\eqref{Eq:IBLInfRel} and the Maurer-Cartan equation~\eqref{Eq:MaurerCartanEquation} are equivalent to
\begin{equation}\label{Eq:BVEquat}
 \BVOp\circ \BVOp = 0\quad\text{and}\quad \BVOp(e^\PMC) = 0,
\end{equation}
respectively, and that the $\BVInfty$-operator $\BVOp^\PMC$ for the twisted $\IBLInfty$-structure $(\OPQ_{klg}^\PMC)$ satisfies
\begin{equation} \label{Eq:TwistBV}
\BVOp^\PMC(\bullet)= e^{-\PMC}\BVOp(e^\PMC\bullet),
\end{equation}
where we multiply with $e^{-\PMC}$ and $e^{\PMC}$, respectively.
These facts were shown in~\cite{Cieliebak2015} using~\eqref{Eq:Mix}.
We refer to Appendix~\ref{App:IBLMV} to the precise formulation of the $\BV$-formalism using a filtered version of the $\MV$-formalism from \cite{Markl2015}.\qedhere
%\footnote{One has to check that the compositions \eqref{Eq:BVEquat} and \eqref{Eq:TwistBV} are well-defined and pick a suitable completion $\CExt C$ so that all the constructions work.}
%Some technical details, e.g., which completion $\CExt C$ we take so that $\BVOp$, $e^\PMC$ and $\Prod$ are well-defined, and why the compositions in \eqref{Eq:BVEquat}, \eqref{Eq:TwistBV} make sense, will be discussed in~\cite{MyPhD}. %For more about $\IBLInfty$-algebras as $\BVInfty$-algebras see~\cite{Markl2015a}.
\end{RemarkList}
\end{Remark}

In our applications in string topology, a canonical $\dIBL$-algebra $\dIBL(C)$ with a natural Maurer-Cartan element $\PMC$ coming from the Chern-Simons theory is given, and we want to study $\dIBL^\PMC(C)$, which will be a chain model of string topology.
We are also interested in the homology $\HIBL^\PMC(C)$, the $\IBL$-structure $\IBL(\HIBL^\PMC(C))$ and possible higher operations on $\HIBL^\PMC(C)$ induced by $\OPQ_{klg}^\PMC$; however, these higher maps are not chain maps in general.
The following proposition summarizes some observations in this situation:

\begin{Proposition}[Twist of a $\dIBL$-algebra]\label{Prop:dIBL}
Let $\dIBL(C) = (C,\OPQ_{110},\OPQ_{210},\OPQ_{120})$ be a $\dIBL$-algebra, and let $\PMC = (\PMC_{lg})$ be a Maurer-Cartan element. The Maurer-Cartan equation~\eqref{Eq:MaurerCartanEquation} reduces to the following:
\[
%\raisebox{-3ex}{\parbox{2em}{\centering MC-eq.}\quad $\Biggl\{$ }
\begin{multlined}[b] 0 = \OPQ_{110}\circ_1 \PMC_{lg} + \OPQ_{120} \circ_1 \PMC_{l-1,g} +  \OPQ_{210}\circ_2 \PMC_{l+1,g-1} \\[\jot]+  \frac{1}{2}\sum_{\substack{l_1, l_2\ge 1 \\ g_1, g_2 \ge 0 \\ l_1 + l_2 = l + 1 \\ g_1 + g_2 = g}} \OPQ_{210}\circ_{1,1}(\PMC_{l_1 g_1}, \PMC_{l_2 g_2}) \end{multlined}\quad \forall l\ge1 , g\ge 0.
\]
In particular, the ``lowest'' equation is given by\footnote{In \cite[Definition 2.4.]{Cieliebak2015}, they define a partial ordering on the signatures $(k,l,g)$.}
\begin{equation} \label{Eq:MCEq}
(l,g) = (1,0): \qquad \OPQ_{110}(\PMC_{10}) + \frac{1}{2}\OPQ_{210}(\PMC_{10}, \PMC_{10}) = 0.
\end{equation}
This can be visualized as
{\begingroup \def\dist{0.25} %distance between two surfaces
  \def\rad{0.5} % radius of bdd
  \def\ecc{0.1} % eccentricity of bdd
  \def\hght{1} % height of surfaces
  \def\dif{1.5} % distance of two circles
  \def\radO{\rad} % radius of bdd
  \def\eccO{\ecc} % eccentricity of bdd
  \def\hghtO{2*\hght+\dist} % height of surfaces
  \def\difO{\dif} % distance of two circles
  \def\gencanc{0.05} % legth of extra line in genus
  \def\genecc{20} % eccentricity of genus
  \def\genrad{0.45} % radius of genus
\[0 =\quad \vcenterline{\input{\GraphicsFolder/p110n10.tex}}\; + \frac{1}{2} \quad \vcenterline{\input{\GraphicsFolder/p210n10n10.tex}}. \]
\endgroup}

The twisted $\IBLInfty$-algebra $\dIBL^\PMC(C)$ consists of the operations $\OPQ_{110}^\PMC$, $\OPQ_{210}^\PMC$ and~$\OPQ_{120}^\PMC$, which we call the \emph{basic operations}, and of the operations $\OPQ_{1lg}^\PMC$ for the pairs $(l,g)\in \N \times \N_0 \backslash \{(1,0),(2,0)\}$, which we call the \emph{higher operations}. These operations are given by
\[ \begin{aligned}
\OPQ_{110}^\PMC &= \OPQ_{110} + \OPQ_{210}\circ_1 \PMC_{10},\\
\OPQ_{210}^\PMC &= \OPQ_{210}, \\
\OPQ_{120}^\PMC & = \OPQ_{120} + \OPQ_{210}\circ_1 \PMC_{20},\\
\OPQ_{1lg}^\PMC & = \OPQ_{210}\circ_1 \PMC_{lg}.
\end{aligned}\]
This can be visualized as
{ \begingroup \allowdisplaybreaks
\def\dist{0.25} %distance between two surfaces
  \def\rad{0.5} % radius of bdd
  \def\ecc{0.1} % eccentricity of bdd
  \def\hght{1} % height of surfaces
  \def\dif{1.5} % distance of two circles
  \def\radO{\rad} % radius of bdd
  \def\eccO{\ecc} % eccentricity of bdd
  \def\hghtO{2*\hght+\dist} % height of surfaces
  \def\difO{\dif} % distance of two circles
  \def\gencanc{0.05} % legth of extra line in genus
  \def\genecc{20} % eccentricity of genus
  \def\genrad{0.45} % radius of genus
\begin{align*}
\OPQ_{110}^\PMC & =\quad\vcenterline{\input{\GraphicsFolder/p110.tex}}\quad +\quad \vcenterline{\input{\GraphicsFolder/twist2.tex}}, \\[1ex]
\OPQ_{210}^\PMC &=\quad \vcenterline{\input{\GraphicsFolder/p210.tex}}, \\[1ex]
\OPQ_{120}^\PMC &=\quad \vcenterline{\input{\GraphicsFolder/p120.tex}}+\quad\vcenterline{\input{\GraphicsFolder/twist1.tex}}, \\[1ex]
\OPQ^{\PMC}_{1lg} & =\quad \vcenterline{\input{\GraphicsFolder/twistn.tex}}.
\end{align*}
\endgroup}
The $\IBLInfty$-relations satisfied by $(\OPQ_{klg}^\PMC)$ read for all $l\ge 1$, $g\ge 0$ as follows:
\begin{equation}\label{Eq:IBLInftydIBL}
\begin{aligned}
(3,1,0):\quad 0& = \OPQ_{210}^\PMC \circ_1 \OPQ_{210}^\PMC, \\[\jot]
(2,l,g):\quad 0&=\OPQ^\PMC_{1lg}\circ_1 \OPQ^\PMC_{210} + \OPQ^\PMC_{210}\circ_1\OPQ^\PMC_{1lg}, \\[\jot]
(1,l,g):\quad 0&= \begin{multlined}[t] \sum_{\substack{l_1, l_2 \ge 1 \\ g_1, g_2 \ge 0 \\ l_1 + l_2 = l+1 \\ g_1 + g_2 = g}} \OPQ^\PMC_{1l_1 g_1}\circ_1 \OPQ^\PMC_{1 l_2 g_2}+\OPQ^\PMC_{210} \circ_2 \OPQ^\PMC_{1, l+1, g-1}.\end{multlined}
\end{aligned}
\end{equation}
We call the relations for $(k,l,g) = (1,1,0)$, $(2,1,0)$, $(1,2,0)$, $(3,1,0)$, $(1,3,0)$, $(2,2,0)$, $(1,1,1)$ \emph{basic relations} because they contain all compositions of basic operations. In the order above, they read:
\[\begin{aligned}
 0 & =\OPQ^\PMC_{110} \circ_1 \OPQ^\PMC_{110}, && \\
0 &=\OPQ^\PMC_{110}\circ_1\OPQ^\PMC_{210} + \OPQ^\PMC_{210}\circ_1 \OPQ^\PMC_{110}, && \\
0 &= \OPQ^\PMC_{110}\circ_1 \OPQ^\PMC_{120} + \OPQ^\PMC_{120}\circ_1 \OPQ^\PMC_{110}, && \\
0 &= \OPQ^\PMC_{210} \circ_1 \OPQ^\PMC_{210}, && \leftarrow\text{Jacobi identity} \\
0 &=\OPQ^\PMC_{120} \circ_1 \OPQ^\PMC_{120} + \OPQ^\PMC_{110}\circ_1 \OPQ^\PMC_{130} + \OPQ^\PMC_{130}\circ_1 \OPQ^\PMC_{110}, && \leftarrow\text{co-Jacobi id. up to htpy.} \\
0 & = \OPQ^\PMC_{120}\circ_1 \OPQ^\PMC_{210} + \OPQ^\PMC_{210}\circ_1 \OPQ^\PMC_{120}, && \leftarrow\text{Drinfeld identity} \\
0 & = \OPQ^\PMC_{210}\circ_2 \OPQ^\PMC_{120} + \OPQ^\PMC_{111}\circ_1 \OPQ^\PMC_{110} + \OPQ^\PMC_{110}\circ_1 \OPQ^\PMC_{111}. && \leftarrow\text{Involutivity up to htpy.}
\end{aligned}\]
The last four equations can be visualized as
{ \begingroup \allowdisplaybreaks
\def\dist{0.25} %distance between two surfaces
  \def\rad{0.4} % radius of bdd
  \def\ecc{0.1} % eccentricity of bdd
  \def\hght{1} % height of surfaces
  \def\dif{1.1} % distance of two circles
  \def\difbig{1.5*\dif} % distance of two circles
  \def\radO{\rad} % radius of bdd
  \def\eccO{\ecc} % eccentricity of bdd
  \def\hghtO{2*\hght+\dist} % height of surfaces
  \def\difO{\dif} % distance of two circles
  \def\gencanc{0.05} % legth of extra line in genus
  \def\genecc{20} % eccentricity of genus
  \def\genrad{0.3} % radius of genus
\begin{align*}
0 & =\quad\vcenterline{\input{\GraphicsFolder/jacobi.tex}}, \\[1ex]
0&=\quad \vcenterline{\input{\GraphicsFolder/cojacobi.tex}}+
\vcenterline{\input{\GraphicsFolder/cojacobi2.tex}}
+\quad\vcenterline{\input{\GraphicsFolder/cojacobi3.tex}}, \\[1ex]
0&=\quad \vcenterline{\input{\GraphicsFolder/drinfeld.tex}}+\quad\vcenterline{\input{\GraphicsFolder/drinfeld2.tex}},\\[1ex]
0& =\quad \vcenterline{\input{\GraphicsFolder/involutivity.tex}}\quad+\quad\vcenterline{\input{\GraphicsFolder/involutivity2.tex}}\quad+\quad\vcenterline{\input{\GraphicsFolder/involutivity3.tex}}.
\end{align*}
\endgroup}
\end{Proposition}
\begin{proof}
The proof is clear by specializing \eqref{Eq:IBLInfRel}, \eqref{Eq:MaurerCartanEquation} and \eqref{Eq:TwistedOperations}.
\end{proof}

\begin{Remark}[Higher operations]\phantomsection\label{Rem:Higher}
\begin{RemarkList}
\item We see from Proposition~\ref{Prop:dIBL} that if $\OPQ_{120}^\PMC \circ_1 \OPQ_{120}^\PMC = 0$ and $\OPQ_{210}^\PMC \circ_{2} \OPQ_{120}^\PMC = 0$, then $[\Bdd^\PMC, \OPQ_{130}^\PMC] = 0$ and $[\Bdd^\PMC, \OPQ_{111}^\PMC] = 0$, respectively, and hence the operations $\OPQ_{130}^\PMC: \hat{\Ext}_1\HIBL^\PMC\rightarrow \hat{\Ext}_3\HIBL^\PMC$ and $\OPQ_{111}^\PMC: \hat{\Ext}_1\HIBL^\PMC\rightarrow \hat{\Ext}_1\HIBL^\PMC$ are well-defined (provided that the assumption of Definition \ref{Def:HomIBL} holds). Likewise, the higher operation~$\OPQ_{1lg}^\PMC$ defines a map $\hat{\Ext}_1\HIBL^\PMC \rightarrow \hat{\Ext}_l\HIBL^\PMC$, provided that the following equation holds:
\[ \OPQ^\PMC_{210}\circ_2 \OPQ_{1,l+1,g-1}^\PMC + \sum_{\substack{l_1, l_2 \ge 1 \\ g_1, g_2 \ge 0 \\ l_1 + l_2 = l+1 \\ g_1 + g_2 = g \\ (l_i,g_i)\neq (1,0)}} \OPQ^\PMC_{1l_1 g_1}\circ_1 \OPQ^\PMC_{1 l_2 g_2} = 0. \]
This expression is just the left-over after subtracting the commutator $[\OPQ_{1lg}^\PMC,\OPQ_{110}^\PMC] = \OPQ_{110}^\PMC \circ_1 \OPQ_{1lg}^\PMC + \OPQ_{1lg}^\PMC \circ_1 \OPQ_{110}^\PMC$ from \eqref{Eq:IBLInftydIBL}.
%Later, when the twist realizes a homotopy transfered $\IBLInfty$-algebra. Note that this is a similar situation as with higher $\AInfty$-Massey product.
\item In the genus-$0$ case, i.e., $\OPQ_{1lg}^\PMC = 0$ whenever $g\ge 1$, relations \eqref{Eq:IBLInftydIBL} reduce to
\begin{align*}
 0 & = \OPQ_{210}\circ_1\OPQ_{210}, \\
 0 & = \OPQ_{1lg}^\PMC\circ_1\OPQ_{210} + \OPQ_{210}\circ_1\OPQ_{1lg}^\PMC, \\
 0 & = \sum_{\substack{l_1,l_2\ge 1\\ g_1, g_2 \ge 0 \\ l_1 + l_2 = l + 1 \\ g_1 + g_2 = g}} \OPQ_{1l_1 g_1}^\PMC \circ_1 \OPQ_{1l_2 g_2}^\PMC.
\end{align*}
The first relation is the Jacobi identity for $\OPQ_{210}$, the second relation is a generalization of the Drinfeld identity to higher coproducts $\OPQ_{1l0}^\PMC$, and the third relations are \emph{$\CoLInfty$-relations} for $\OPQ_{1lg}^\PMC$.
Therefore, allowing $g\ge 0$, we see that the twisted $\dIBL$-algebra $\OPQ_{110}^\PMC$, $\OPQ_{210}$, $(\OPQ_{1lg}^\PMC)$ is, in fact, a \emph{quantum $\CoLInfty$-algebra.}\qedhere
\end{RemarkList}
\end{Remark}

%It corresponds to complete gluings of a surface of signature $(k_1, l_1, g_1)$ at its $h$ outgoing ends, plus an appropriate number of trivial cylinders, to $h$ ingoing ends of a surface of signature $(k_2,l_2,g_2)$, plus an appropriate number of trivial cylinders. The signature consists of the number of incoming ends, outgoing ends and genus.
%
%
%It corresponds to complete gluings of $r$ connected surfaces of signatures $(0,l_i,g_i)$, plus $k$ trivial cylinders, at their outgoing ends to the ingoing ends of a connected surface of signature $(k',l',g')$, plus an appropriate number of trivial cylinders, to obtain a connected surface of signature $(k,l,g)$.
%
%It corresponds to complete gluings of $r$ connected surfaces of signatures $(0,l_i,g_i)$ at their $h_i$ outgoing ends to the ingoing ends of a connected surface of signature $(k',l',g')$, plus an appropriate number of trivial cylinders, to obtain a connected surface of signature $(0,l,g)$.

\end{document}


\section{Critical points of the Energy in Euclidean space}


 %!TEX root = ../dissertation_vkslm.tex

\chapter{Neural Networks and Deep Learning} \label{ch:nndl}
This chapter introduces and gives a brief overview of the theoretical foundations of Deep Neural Networks. In the first section, basic concepts of Artificial Neural Networks are presented, starting from the original models. The next section gives an introduction and a general overview of the deep learning research field, discussing the recent advancements that enabled training Deep Neural Networks successfully. Finally, we briefly describe the fundamentals of the Convolutional Neural Network and present the Fully Convolutional Networks, which is a model used in this work, and we present the techniques used for training our model.

\section{Artificial Neural Networks}

A biological neural network is an essential part of human brain. The human brain is a highly complex information processing system capable of interpreting large amounts of information and making decisions. It is a complex, non-linear and parallel ``computer'' consisting of millions of connected neurons \cite{haykin2009neural}. In many tasks, the human brain is more efficient than computers. For instance, the human brain can recognize a familiar face in about 100-200 ms, while modern computers require minutes or even hours for solving the same problem \cite{haykin2009neural}.

Based on examples and feedback from the ``teacher'', our brain allows us learning how to
distinguish an apple from an orange or recognize letters. Moreover, even without the ``teacher'', we are still able to group similar patterns. Those and other strengths of human brain challenged scientists to emulate those processes by researching how to use machines for tasks that are common for humans. Moreover, one of the concepts that appeared as the result of that research is the Artificial neural network (ANN) concept.

\subsection{Artificial Neuron}
The first model to simulate a single neuron, which is the elemental building block of neural networks, was the perceptron \cite{rosenblatt1958perceptron}. A single neuron implements a mathematical function given its inputs, to provide an output, as described in Equation \ref{eq:activation} and illustrated in Figure \ref{perceptron}.
\begin{equation}
y = f(\sum_{i=1}^{n} x_{i}w_{i} + b)
\label{eq:activation}
\end{equation}

In this equation, $x_{i}$ is the input $i$, $w_{i}$ is the weight associated with input $i$, $b$ is a
bias term and $f$ the activation function.
\begin{figure}[!htb]
\centering
\includegraphics[width=3.4in]{perceptron}
\caption{Perceptron representation. $x_{1}$ and $x_{2}$ represent the input signal, $b$ the bias term, $w_{0}$, $w_{1}$, $w_{2}$ the weights, $f_{\:\sum}$ is the activation function (in this case, a step function) and the output signal is given by $y$.}
\label{perceptron}
\end{figure}

%The learning rule algorithm for learning relations in data with a neuron can be summarized as: for every input $x_{i}$, make a linear prediction about its label: $y^*_{i} = w^T x_{i}$
%and update the weights ($w$) as,
%\begin{equation}
%w \leftarrow w + x_{i}(y_{i} - y^*_{i})
%\end{equation}

Models based on perceptrons have severe limitations. An evaluation by Minsky and Papert \cite{papert1969perceptrons} showed that a perceptron cannot model data that is not linearly separable, such as a simple XOR operator. It was observed that ``for data sets that are not linearly separable, the perceptron learning algorithm will never converge'' \cite{bishop2006pattern}. This observation is related to the perceptron's limited representational power, the learning rule only converges to the correct solution if the data is linearly separable. The Multilayer Perceptron (MLP) with a single hidden layer, however, has been proven \cite{hornik1989multilayer} to approximate any continuous function on a compact input domain to arbitrary precision. For this reason, MLPs are said to be \textit{universal function approximators} \cite{hornik1989multilayer}.

\section{Multi-layer Neural Networks}
Multi-layer Neural Networks such as the MLP consist of stacking several neuron units together. Specifically, in the MLP, neurons are stacked in one layer connecting these stacks sequentially, without connections between the neurons in the same layer, as it is shown in Figure \ref{mlp}. Each neuron in the MLP is normally fully connected with all the neurons in the next layer, with its own set of weights. The first layer of an MLP is usually the input sample, and the last layer is the output of the network. The layers between the input and output layers are called hidden layers.

\begin{figure}[!htb]
\centering
\includegraphics[width=0.5\textwidth]{mlp}
\caption{Multilayer perceptron representation. Each layer contains several perceptron units, which are then connected to units in the subsequent layer.}
\label{mlp}
\end{figure}

An MLP can be thought of as a function that maps from input to output vectors, parameterized by the neuron connection weights. The output of a layer
is calculated by applying the neuron activation function for all neurons on the layer, as
noted in Equation \ref{eq:outputmlp}
\begin{equation}
y^{(l)} = f(W^{(l)} y^{(l-1)} + b^{(l)})
\label{eq:outputmlp}
\end{equation}
where $W^{(l)}$ is a matrix of weights assigned to each pair of neurons from layer $l$ and $l-1$, and $b^{(l)}$ is a vector of bias terms for each neuron in layer $l$. Calculating the output starting from the first hidden layer, up to the output layer is also referred to as the \textit{forward propagation} phase.

\subsection{Loss Function}
%control c control v
In order to train the model, an objective function, also called loss function, is defined.
This function measures the compatibility between a prediction and the ground truth label. The
objective of the training is to minimize the sum (or, equivalently, the mean) of
this error function applied to all examples in the dataset. Commonly used loss functions
are the Mean Squared Error function (MSE), and the Cross-Entropy (CE). Equations \ref{eq:mse} and \ref{eq:ce} describe the MSE and CE, respectively, for a sample of the dataset,

\begin{equation}
E =  \frac{1}{N} \sum_{c}^{N} (t_{(c)} - y^{}_{(c)} )^2
\label{eq:mse}
\end{equation}

\begin{equation}
E = - \sum_{c}^{N} (t_{(c)} \: log \: y^{}_{(c)} )^2
\label{eq:ce}
\end{equation} where $y^{}_{(c)}$ is the output of unit $c$ in the last layer, $t_{(c)}$
the true label $t$ for unit $c$ and $N$ is the number of units on the last layer.
\subsection{Backpropagation}
The phase called backpropagation consists in minimizing the error $E$ between the network output and the expected target. The algorithm works by calculating the derivatives of the error
function with respect to the model’s parameters (weights and biases). Then, it propagates the error from the output layers, back to the initial layers, one layer at a time, in order to update the weights of the neuron connections to minimize the error $E$. The weights are updated conforming Equation \ref{eq:bp}

\begin{equation}
w(t+1) = w(t) - \alpha\ \Delta\ E(w(t))
\label{eq:bp}
\end{equation}
where $E$ is the error measure defined as loss sum over the entire training set, and $t$ indicates iterations (time steps). The $\Delta(E)$ is the gradient vector, which is computed by applying the chain rule on the layers of the NN \cite{rumelhart1985learning}. The parameter $\alpha$ is a heuristic, called learning rate. The learning rate values help to avoid convergence to a local-minimum or maximum point.

\subsection{Activation Functions}
\begin{figure}[!htb]
\centering
 \subfloat[Sigmoid]{\includegraphics[width=2.5in]{sigmoid}}
\hspace*{0.2in} % separation between the subfigures
\subfloat[Tanh] {\includegraphics[width=2.5in]{tanh}}
\\
\subfloat[ReLU] {\includegraphics[width=2.5in]{relu}}
\hspace*{0.2in} % separation between the subfigures
\subfloat[LReLU] {\includegraphics[width=2.5in]{lrelu}}

\caption{Neural network activation functions. } \label{fig:activation}
\end{figure}
\subsubsection{Sigmoid}
The sigmoid activation function is a non-linear function in the range of $]0, 1[$ and has the mathematical form defined in Equation \ref{eq:sigmoid} and is shown in the Figure \ref{fig:activation} (a).
\begin{equation}
f(x) = \frac{1}{1+e^{-x}}
\label{eq:sigmoid}
\end{equation}
It takes a real-valued number and transforms it to the range between 0 and 1. Small negative numbers become 0 and large positive numbers become 1.
\subsubsection{Tanh}

The Hyperbolic Tangent (tanh) non-linearity is shown in Figure \ref{fig:activation} (b) and is defined in Equation \ref{eq:tanh}. It limits a real-valued number to the range of $[-1, 1]$
\begin{equation}
f(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}}
\label{eq:tanh}
\end{equation}

\subsubsection{Rectified Linear Unit}

The Rectified Linear Unit (ReLU) has become very popular in the last few years and was one of the main discoveries that enabled the training of deeper neural networks. It computes the function
\begin{equation}
f(x)=max \: (0,x)
\label{eq:relu}
\end{equation}
this activation function can be simply regarded as a threshold at zero, see Figure \ref{fig:activation} (c).

\subsubsection{Leaky Rectified Linear Units}

Leaky Rectified Linear Units (LReLU) is an attempt to improve the ReLU. Instead of the function being zero when $x < 0$, a leaky ReLU will instead have a small negative slope (around 0.01). The function computes

\begin{equation}
f(x)=\begin{cases}
      \alpha x, & \text{if}\ x < 0\\
      x, & \text{otherwise}
    \end{cases}
\label{eq:lrelu}
\end{equation} where $\alpha$ is a small constant, see Figure \ref{fig:activation} (d).

\section{Deep Neural Networks}
Deep architectures are characterized by the multiple levels of non-linear operations
contained on a neural network. While many of the early successful applications of neural networks used shallow architectures (up to 3 hidden layers). It was found, however, that the mammal brain is organized in a deep architecture. The brain appears to process information through multiple stages, which is particularly clear in the primate visual system \cite{bengio2009learning}.

It was observed in many experiments that deep networks are harder to train than shallow networks, and that training deep networks often get stuck in apparent local minima (or plateaus) when starting with random initialization of the network parameters. Deep Neural Networks have been investigated for decades, but training deep networks consistently yielded poor results.

The proposal of the Convolutional Neural Network \cite{lecun1995convolutional} and some recent theoretical discoveries made training deep neural networks feasible. The CNN is a particular type of deep, feedforward neural network that is easier to train and generalized better than networks with full connectivity between adjacent layers \cite{lecun2015deep}. Besides, the theoretical findings include unsupervised training of the layers \cite{hinton2006fast}, Rectifier Linear Unit (ReLU) \cite{nair2010rectified} as the activation function and the regularization techniques Dropout \cite{srivastava2014dropout} and Batch Normalization \cite{ioffe2015batch}.

\section{Convolutional Neural Networks}
CNNs combine three architectural ideas: local receptive fields, shared
(tied) weights and spatial or temporal sub-sampling \cite{lecun1998gradient}. When trained with appropriate regularization, CNN achieves state-of-the-art performance
on visual object recognition and image classification tasks \cite{lecun2015deep}. The CNN is composed of several layers of trainable filters (convolutional layers) and local neighborhood pooling operations (pooling layers) stacked in an alternating sequence starting with the raw input images. To illustrate the concept, Figure \ref{lenet} shows an example of an architecture of a CNN, namely, the Lenet \cite{lecun1998gradient}, one of the first applications of the CNN used for handwriting recognition.

\begin{figure}[!htb]
\centering
\includegraphics[width=\textwidth]{lenet}
\caption{Lenet \cite{lecun1998gradient}, a convolutional neural network used for handwriting recognition.}
\label{lenet}
\end{figure}

Figure \ref{learned} provides an example of the filters learned on a convolutional layer of a network trained for object classification, showing that this type of architecture is
capable of learning interesting feature detectors, similar to edge detectors.
\begin{figure}[!htb]
\centering
\includegraphics[width=0.7\textwidth]{learned}
\caption{Example of feature maps learned by the CNN proposed by \cite{krizhevsky2012imagenet} for object classification.}
\label{learned}
\end{figure}

\subsection{Convolutional Layer}
Convolutional layers have trainable filters (also called feature maps) that are applied
across the entire input \cite{lecun1995convolutional}. For each filter, each neuron is connected only to a subset of
the neurons in the previous layer. In the case of 2D input (such as images), the filters
define a small area (e.g., 3x3 or 5x5 pixels), and each neuron is connected only to the
nearby neurons (in this area) in the previous layer. The weights are shared across neurons,
leading the filters to learn frequent patterns that occur in any part of the image.

The definition for a 2D convolution layer is presented in Equation \ref{eq:cnn}. A 2D convolution layer is the application of a discrete convolution of the inputs $y^{(l-1)}$ with a filter $w^{(l)}$, adding a bias $b_{(l)}$ , followed by the application of an activation function $f$:

\begin{equation}
y^{(l)}_{rc} = f(\sum_{i=1}^{N_{r}} \sum_{j=1}^{N_{c}} y^{(l-1)}_{(r+i-1)(c+j-1)} w^{(l)}_{ij} + b^{(l)} )
\label{eq:cnn}
\end{equation}
where $y^{(l)}_{rc}$ is the output at position $\{r,c\}$, $N_{r}$ and $N_{c}$ are the number of rows and columns, respectively, of the 2D filter, $w^{(l)}_{ij}$ is the filter value at position $\{i,j\}$, $y^{(l-1)}_{(r+i-1)(c+j-1)}$ is the $\{r+i-1,c+j-1\}$.

The equation above is defined for all possible applications of the filter, as in Figure \ref{fig:convop} (a), that is, for
$r \in \{1, ..., I_{r} - N_{r} + 1\}$ and $c \in \{1, ..., I_{c} - N_{c} + 1\}$, where $I_{r}$ and $I_{c}$ are the number of rows and columns in the input to this layer. The convolutional layer can either apply the filters for all possible inputs \footnote{Animated representation can be found in: \url{https://raw.githubusercontent.com/vdumoulin/conv_arithmetic/master/gif/no_padding_no_strides.gif}}, or use a different strategy. Instead of applying the filter for all possible $\{r, c\}$ pairs, only the pairs with distance
$s$ are used, which is called the stride. A stride $s = 2$ \footnote{Animated representation of strides can be found in: \url{https://raw.githubusercontent.com/vdumoulin/conv_arithmetic/master/gif/no_padding_strides.gif}} is equivalent to apply the convolution for half of the possible pairs, as in Figure \ref{fig:convop} (b).

\begin{figure}[!htb]
\centering
\subfloat[Convolving a 3x3 kernel over a 4x4 input, with 1x1 stride.] {\includegraphics[width=\textwidth]{conv-operation}}
\\
\subfloat[Convolving a 3x3 kernel over a 5x5 input, with 2x2 stride.] {\includegraphics[width=\textwidth]{conv-operation-strides}}

\caption{Convolution operation with (a) stride 1x1 and (b) stride 2x2. Extracted from \cite{dumoulin2016guide}.} \label{fig:convop}
\end{figure}

\section{Fully Convolutional Network Architecture}

The Fully Convolutional Network (FCN) \cite{long2015fully} is a CNN modified for dense
predictions. This architecture was developed under the observation that although a typical CNN is designed for spatial inputs, such as images, it normally discard spatial information in their fully connected layers (FC).

FCNs are, thus, rooted in the observation that spatial filters, which are learned during the CNN training, are useful for extracting low-level features, but FC layers are needed to incorporate high-level reasoning. The main idea of the FCN architecture is to convert the FC layers of a CNN into convolutional layers, expecting that the network retains the ability to learn high-level information and at the same time preserve spatial information. The FCN becomes, therefore, ``fully convolutional'' by having end-to-end convolutional layers.

While CNNs are typically built in a sequence of convolutional, pooling, and fully connected layers, FCN adds an expanding path built with a transposed convolutional layer \cite{long2015fully}. The expanding path recovers spatial information by merging features skipped from the various resolution levels on the contracting path.

Unlike a CNN, which learns a general, nonlinear function that characterizes the input, FCNs learn an end-to-end nonlinear mapping from one input image to another. Because pixel-wise prediction is used, the label space is also transformed from a scalar to a two-dimensional image, where each pixel value represents the object class of its corresponding input pixel. An FCN with an input image and label is illustrated in Figure \ref{fcn-arch}

\begin{figure}[!htb]
\centering
\includegraphics[width=\textwidth]{fcn-arch}
\caption{Fully convolutional networks can efficiently learn to make dense predictions for
per-pixel tasks. Extracted from \cite{long2015fully}}
\label{fcn-arch}
\end{figure}

\subsection{Transposed Convolution}
%https://arxiv.org/pdf/1603.07285.pdf p 19

Transposed convolutions - also called deconvolution or backward convolution - work by swapping the forward and backward passes of a convolution. Whether it is a direct convolution or a transposed convolution is determined by how the forward and backward passes are computed \cite{dumoulin2016guide}. Figure \ref{fig:transposed} illustrates the general backwards convolution process \cite{dumoulin2016guide}.

\begin{figure}[!htb]
\centering
\includegraphics[width=\textwidth]{transposed}

\caption{Upsampling with transposed convolutions. Upsampling is done by padding
(white) the original pixels (blue) and convolving them with a filter (gray). The result is
an upsampled image (green). Here a stride of one is used, illustrated from left to right. Extracted from \cite{dumoulin2016guide}.} \label{fig:transposed}
\end{figure}

\section{Deep Neural Networks Training}

\subsection{Weight Initialization}
When the training of the neural network starts, the initial values of the weights and biases need to be provided. Some techniques to weight initialization have been proposed and shown to be useful to smooth the model convergence.

\subsubsection{Uniform}
The uniform initialization is the most simple. The model parameters are initialized through a random distribution in the range of $[l1, l2]$, where $l1$ and $l2$ are two constants.

\subsubsection{Glorot}
This weight initialization technique was proposed in \cite{glorot2010understanding}. The dynamic of the activation functions and the gradients weights were studied, and they found the neural network converges faster using the weight initialization described in Equation \ref{eq:glorot}.

\begin{equation}
W \sim U \; \left[\sqrt{\frac{6}{f_{in}+f_{out}}}\; \right]
\label{eq:glorot}
\end{equation}
where $W$ are the weights, $U$ is an uniform distribution, and $f_{in}$ and $f_{out}$ are the number of units in the previous layer and the next layer, respectively.

\subsection{Optimization Algorithms}
Training the network consists in minimizing the error function, based on the gradients of the parameters with relation to the cost function, by updating the weights and biases, expecting that the network learns how to perform the task it is being trained for.

\subsubsection{Stochastic Gradient Descent}

The Stochastic Gradient Descent (SGD) algorithm, as defined in \cite{bishop2006pattern} can be summarized a series of iterations over mini-batches of the dataset, performing forward-propagation
followed by a back-propagation to calculate the error derivatives with respect to the parameters. The weights are updated using these derivatives, and a new mini-batch is used. This procedure is repeated until a convergence criterion is  reached. Common convergence criteria are a maximum number of epochs (number of times that the whole training set was used); a desired value for the cost function is reached, or training until the cost function shows no improvement in a number of iterations.

\subsubsection{Adaptive Moment Estimation}
The Adaptive Moment Estimation (ADAM) \cite{kingma2014adam} is a stochastic optimization method that can adaptively tune the learning rate per parameter and also keeps an exponentially decaying average of past gradients $m_t$ and $v_t$:

\begin{subequations}
\begin{gather}
\label{adamfirst}
m_t = \beta_1 m_{t-1} + (1 - \beta_1) g_t \\
v_t = \beta_2 v_{t-1} + (1 - \beta_2) g_t^2
\end{gather}
\end{subequations}
where $m_t$ and $v_t$ are estimates of the first moment and the second moment of the gradients respectively, $\beta_1$ and $\beta_2$ are the decay rate and $g$ is the gradient with respect to $w$.

Since the moments are biased towards zero mostly during the initial time steps, the authors work around these biases by computing bias-corrected estimates:
\begin{subequations}
\begin{gather}
\hat{m}_t=\dfrac{m_t}{1 - \beta^t_1} \\
\hat{v}_t=\dfrac{v_t}{1 - \beta^t_2}
\label{adamend}
\end{gather}
\end{subequations}
Then, they use these computed variables to update the parameters:
\begin{equation}
w_{t+1} = w_{t} - \alpha \dfrac{\hat{m}_t}{\sqrt{\hat{v}_t} + \epsilon}
\label{adamend2}
\end{equation}
The authors propose default values of 0.9 for $\beta_1$, 0.999 for $\beta_2$, and $10^{-8}$ for $\epsilon$.


\subsection{Consequences of Uniformisation}
\begin{corollary}
    If $R$ is a compact Riemann surface with genus at least $2$, then it is uniformised by $\mathbb D$.
\end{corollary}
\begin{proof}
    It cannot be uniformised by $\mathbb C$ or $\mathbb C_\infty$.
\end{proof}
\begin{corollary}[Riemann Mapping Theorem]
    If $D\subsetneq\mathbb C$ is a simply connected domain, then $D$ is conformally equivalent to $\mathbb D$.
\end{corollary}
\begin{proof}
    We only have to show that $D$ is not conformally equivalent to $\mathbb C_\infty$ or $\mathbb C$.
    It certainly cannot be conformally equivalent to $\mathbb C_\infty$ since $D$ is not compact.
    Suppose $f$ is a conformal equivalence from $\mathbb C$ to $D$.
    Casorati-Weierstrass shows that the singularity of $f$ at $\infty$ is not essential (as $f$ has to be injective).
    So $\infty$ is either removable or a pole, therefore $f$ extends to $\bar{f}:\mathbb C_\infty\to D\cup\{\bar{f}(\infty)\}\subset\mathbb C_\infty$.
    But now $\mathbb C_\infty$ is compact, so $\bar{f}:\mathbb C_\infty\to\mathbb C_\infty$ is surjective, hence $\bar{f}(\infty)=\infty$ and thus $D=\mathbb C$, contradiction.
\end{proof}
\begin{corollary}[Picard's Theorem]
    Any analytic function $\mathbb C\to\mathbb C\setminus\{0,1\}$ is constant.
\end{corollary}
Of course we can replace $\{0,1\}$ by any two distinct points in $\mathbb C$.
\begin{proof}
    $\mathbb C\setminus\{0,1\}$ is uniformised by $\mathbb D$ by Example Sheet.
    The statement then follows from the lifting lemma.
\end{proof}


\section{Criterion}
The criterion and divergences listed here can be used to quantify the "distance"
between two distributions. Hence, in conjunction with torch optimizers,
one can minimize said difference to learn the paramters of a distribution. For
sake of notation clarity, $p$ is the true distribution and $q$ is the learned
distribution. Hence we "fit" $q$ to match $p$. In addition, we provide the
Monte Carlo approximation.

\begin{center}
\begin{tabular}{l|lC{1.5cm}|C{1.5cm}|C{1.5cm}|C{1.5cm}}
\toprule
\multicolumn{1}{l}{} & \multicolumn{1}{l}{} & \multicolumn{2}{c}{$P$} & \multicolumn{2}{c}{$Q$} \\
\cmidrule(lr){3-4}  \cmidrule(lr){5-6}
\multicolumn{1}{l}{} & \multicolumn{1}{l}{Criterion} &  \multicolumn{1}{c}{$\log p(x)$} &  \multicolumn{1}{c|}{$x \sim P$} &  \multicolumn{1}{c}{$\log q(x)$} &  \multicolumn{1}{c}{$x \sim Q$} \\
\midrule
\multirow{5}{*}{Divergence}    & Cross-Entropy    &        & \cmark & \cmark &        \\
                               & Perplexity       &        & \cmark & \cmark &        \\
                               & Exponential      & \cmark & \cmark & \cmark &        \\
                               & Forward KL       & \cmark & \cmark & \cmark &        \\
                               & Reverse KL       & \cmark &        & \cmark & \cmark \\
                               & JS Divergence    & \cmark & \cmark & \cmark & \cmark \\
\midrule
\multirow{4}{*}{Adversarial}   & GAN              &        & \cmark &        & \cmark \\
                               & MMGAN            &        & \cmark &        & \cmark \\
                               & WGAN             &        & \cmark &        & \cmark \\
                               & LSGAN            &        & \cmark &        & \cmark \\
% \midrule
% \multirow{1}{*}{Variational}   & ELBO             &        & \cmark & \cmark &        \\
\bottomrule
\end{tabular}
\end{center}

\subsection{Divergences}

\subsubsection{Cross-Entropy}
\begin{equation}
  \begin{aligned}
    H(p, q) =& - \int p(x) \log q(x) dx \\
    =& - \frac{1}{n} \sum_{x \sim p} \log q(x)
  \end{aligned}
\end{equation}
\subsubsection{Perplexity}
\begin{equation}
  \begin{aligned}
    H(p, q) =& \exp \left( - \int p(x) \log q(x) dx \right) \\
    =& \exp \left(- \frac{1}{n} \sum_{x \sim p} \log q(x) \right)
  \end{aligned}
\end{equation}

\subsubsection{Exponential}

\subsubsection{Forward KL Divergence}
\begin{equation}
  \begin{aligned}
    H(p, q) =& \int p(x) \log \frac{p(x)}{q(x)} dx  \\
    =&  \frac{1}{n} \sum_{x \sim p} \log \frac{p(x)}{q(x)}
  \end{aligned}
\end{equation}
\subsubsection{Reverse KL Divergence}
\begin{equation}
  \begin{aligned}
    H(p, q) =& \int q(x) \log \frac{q(x)}{p(x)} dx  \\
    =&  \frac{1}{n} \sum_{x \sim q} \log \frac{q(x)}{p(x)}
  \end{aligned}
\end{equation}
\subsubsection{Jensen-Shannon Divergence}
\subsubsection{Earth Mover's Distance}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Adversarial Loss}
Adversarial Losses are criterion functions that allow for sample-sample based
training between models $p$ and $q$. More formally, it hides a Discriminator
model that attempts to discriminate between the real data from $p$ and fake data
generated from $q$.
\subsubsection{Adversarial Loss (Base Class)}
\subsubsection{GAN Loss}
\subsubsection{MMGAN Loss}
\subsubsection{WGAN Loss}
\subsubsection{LSGAN Loss}
\subsubsection{Gradient Penalty}
\subsubsection{Spectral Norm}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{ELBO}


\section{Solving random-exist quantified SSAT}
\label{sect:ressat-technique}

Consider a random-exist quantified SSAT formula $\Qf=\random{} X,\exists Y.\pf(X,Y)$.
The satisfying probability of $\Qf$ equals the summation of weight of all SAT minterms over $X$, or, equivalently,
$1$ minus the summation of weight of all UNSAT minterms over $X$.
To identify an assignment $\as$ over $X$ as a SAT or an UNSAT minterm,
it suffices to check whether $\pcf{\pf(X,Y)}{\as}$ is satisfiable or not.
A naive solution to computing the satisfying probability of $\Qf$ is to exhaustively examine all assignments over $X$, classify them as SAT or UNSAT minterms, and aggregate the weight of collected minterms.

The above naive idea can be improved by exploiting the minterm-generalization techniques discussed in~\cref{sect:ressat-generalize}.
For instance, in~\cref{ex:ressat-assign},
$\as=x_1x_2$ is a SAT minterm over $\{x_1,x_2\}$ for $\pf(x_1,x_2,y_1,y_2)=x_1 \land (\lnot x_2 \lor y_1 \lor y_2)$.
Observe that $\pf(x_1,x_2,y_1,y_2)$ is satisfiable under the partial assignment $\as^+=x_1$.
In other words, the SAT minterm $\as$ can be generalized into the SAT cube $\as^+$, which contains two minterms.
Through the generalization analysis, multiple minterms can be collected in a single SAT-solving run,
enhancing the efficiency to enumerate all possible assignments over $X$.
As will be shown in Section~\ref{sect:ressat-evaluation},
the minterm-generalization techniques are essential to the efficiency of the proposed algorithm.
However, the weight of each collected cube cannot be summed up directly due to the potential overlap between generalized cubes.
This difficulty is overcome by applying weighted model counting,
which aggregates the total weight of the collected cubes correctly, taking the overlap into account.

\begin{algorithm}[p]
    \caption{Solving random-exist quantified SSAT formulas}
    \label{alg:ressat}
    \begin{algorithmic}[1]
        \REQUIRE
        $\Qf=\random{} X,\exists Y.\pf(X,Y)$ and a run-time limit \timeout
        \ENSURE
        Lower and upper bounds $(P_L,P_U)$ of $\spb{\Qf}$
        \STATE $\select(X) := \top$
        \STATE $C_\top := \emptyset$
        \STATE $C_\bot := \emptyset$
        \WHILE{($\sat{\select}$ \textbf{and} $\texttt{run-time} < \timeout$)}
        \STATE $\as := \model{\select}$
        \IF{($\sat{\pcf{\pf}{\as}}$)}
        \STATE $\as^+ := \texttt{MinimalSatisfying}(\pf,\as)$
        \STATE $C_\top := C_\top \cup \{\as^+\}$
        \ELSE
        \STATE $\as^+ := \texttt{MinimalConflicting}(\pf,\as)$
        \STATE $C_\bot := C_\bot \cup \{\as^+\}$
        \ENDIF
        \STATE $\select := \select \land \lnot\as^+$
        \ENDWHILE
        \RETURN $(\texttt{ComputeWeight}(C_\top),1-\texttt{ComputeWeight}(C_\bot))$
    \end{algorithmic}
\end{algorithm}

The above thoughts give rise to the proposed algorithm in~\cref{alg:ressat} to compute the satisfying probability of $\Qf=\random{} X,\exists Y.\pf(X,Y)$.
The proposed algorithm works as follows.
For now, assume the run-time limit \timeout to be infinity.
The effect of imposing a run-time limit on~\cref{alg:ressat} will be explained in~\cref{sect:ressat-approximate}.
Two SAT solvers are used in~\cref{alg:ressat}.
In addition to the SAT solver that holds the matrix CNF $\pf(X,Y)$,
the other SAT solver $\select(X)$, named the selector in the following,
is initialized as a tautology, i.e., without clauses.
The selector $\select(X)$ is in charge of selecting an assignment $\as$ over $X$.
After $\as$ is chosen, the matrix solver $\pf(X,Y)$ will check whether $\pcf{\pf(X,Y)}{\as}$ is satisfiable or not.
If $\pcf{\pf(X,Y)}{\as}$ is satisfiable,
$\as$ will be generalized into a SAT cube by the subroutine \texttt{MinimalSatisfying};
if $\pcf{\pf(X,Y)}{\as}$ is unsatisfiable,
$\as$ will be generalized into an UNSAT cube by the subroutine \texttt{MinimalConflicting}.

Instead of finding a \textit{minimum} satisfying or conflicting assignment,
which is computationally expensive,
we resort to finding a \textit{minimal} satisfying or conflicting assignment,
i.e., an assignment that has no literals removable without affecting the (un)satisfiability,
to leverage the efficient UNSAT-core computation for effective generalization.
After $\as$ is generalized to $\as^+$ and enlisted in $C_\bot$ or $C_\top$,
the negation of $\as^+$, which becomes a blocking clause,
will be conjoined with $\select$ to prune the assignments contained by $\as^+$.

The above process is repeated until $\select$ becomes unsatisfiable,
which signifies the Boolean space spanned by $X$ has been exhaustively searched.
The subroutine \texttt{ComputeWeight} is then invoked to evaluate the weight of the collected cubes.
The subroutines \texttt{MinimalConflicting}, \texttt{MinimalSatisfying}, and \texttt{ComputeWeight} will be detailed below.

\subsection{Minimal satisfying assignment}
Given a SAT minterm $\as$ over $X$,
let $\mu$ be a satisfying assignment over $Y$ for $\pcf{\pf(X,Y)}{\as}$.
The subroutine \texttt{MinimalSatisfying} generalizes $\as$ to $\as^+$ by the following steps.
\begin{itemize}
    \item[a)] Remove every clause $C$ in $\pcf{\pf(X,Y)}{\as}$ that contains some true literal from $\mu$.
    \item[b)] For each literal $l$ in $\as$, drop $l$ and examine whether the rest of clauses remain satisfied
          by scanning these clauses and checking if each of them still contains some true literal.
          If the rest of clauses are still satisfied, discard $l$; otherwise, put $l$ in $\as^+$.
\end{itemize}
After the above steps, the SAT minterm $\as$ will be generalized into a minimal satisfying assignment $\as^+$.

\subsection{Minimal conflicting assignment}
Let $\as$ be an UNSAT minterm over $X$ for $\pf(X,Y)$.
The analysis of unsatisfiability can be done with a modern SAT solver (e.g., using function \texttt{analyzeFinal()} in \minisat) to find a conjunction of literals from $\as$ responsible for the conflict.
However, in general this conjunction of literals might not be minimal,
and some of the literals could be dropped.
The subroutine \texttt{MinimalConflicting} takes the conjunction of literals responsible for the conflict computed by a SAT solver and makes it minimal as follows.
For each literal $l$ in the conjunction,
drop $l$ and examine whether $\pf(X,Y)$ remains unsatisfiable by invoking a SAT call.
If it is unsatisfiable, discard $l$; otherwise, put $l$ in $\as^+$.
After the above steps, the UNSAT minterm $\as$ will be generalized into a minimal conflicting assignment $\as^+$.

\subsection{Weight computation}
The subroutine \texttt{ComputeWeight} aggregates the weight of collected cubes by invoking a weighted model counter.
Because a weighted model counter takes CNF formulas as input,
\texttt{ComputeWeight} first negates each collected cube to turn it into a clause,
and conjoins the resulting clauses into a CNF formula.
As the CNF formula is the negation of the disjunction of the cubes,
the weight of the cubes equals $1$ minus the weight of the CNF formula,
which is computed by a weighted model counter.

\subsection{Modification for approximate SSAT}
\label{sect:ressat-approximate}

The proposed algorithm can be easily modified to solve \textit{approximate SSAT},
where upper and lower bounds of the satisfying probability of an SSAT formula are computed.
Suppose~\cref{alg:ressat} is forced to terminate before the selector $\select$ becomes unsatisfiable.
The weights of the collected SAT and UNSAT cubes are still valid and can be aggregated by \texttt{ComputeWeight},
and the resulted weights reflect the lower and upper bounds of the satisfying probability, respectively.
The early termination can be triggered by imposing a run-time limit for~\cref{alg:ressat}.
Compared to previous DPLL-based approaches that branch on a single variable,
the proposed algorithm considers all randomly quantified variables together and exploits the concept of SAT and UNSAT cubes over the Boolean space spanned by randomly quantified variables,
making the intermediate collected SAT and UNSAT cubes convey useful information about the upper and lower bounds of the exact satisfying probability.
Compared to the DPLL-based state-of-the-art methods,
which cannot be easily modified for approximate SSAT,
the proposed method enjoys the flexibility of solving SSAT approximately or exactly,
depending on the imposed run-time constraint.

We note that the proposed algorithm is more efficient in memory consumption than previous DPLL-based algorithms.
Prior DPLL-based algorithms mostly apply subproblem memorization to avoid repeated computation on the same subproblem.
However, without special treatment, such memorization may result in rapid growth in memory usage.
On the other hand, in the proposed algorithm,
the numbers of collected cubes are greatly reduced by the minterm-generalization techniques,
which gives rise to the memory efficiency.
In our empirical evaluation,
the proposed algorithm consumed two orders of magnitude less memory than the state-of-the-art DPLL-based solver.

\begin{example}
    \label{ex:ressat-solve}
    Consider a random-exist quantified SSAT formula
    \begin{align*}
        \Qf=\random{0.5}r_1,\random{0.5}r_2,\random{0.5}r_3,\exists e_1,\exists e_2,\exists e_3.\pf,
    \end{align*}
    with $\pf$ consisting of the following clauses:
    \begin{itemize}
        \item[] $C_1: (r_1 \lor r_2 \lor e_1)$
        \item[] $C_2: (r_1 \lor \lnot r_3 \lor e_2)$
        \item[] $C_3: (r_2 \lor \lnot r_3 \lor \lnot e_1 \lor \lnot e_2)$
        \item[] $C_4: (r_3 \lor e_3)$
        \item[] $C_5: (r_3 \lor \lnot e_3)$
    \end{itemize}
    \begin{table}[t]
        \centering
        \caption{Solving process of~\cref{alg:ressat} on~\cref{ex:ressat-solve}}
        \label{tbl:ressat-solve-example}
        \small
        \begin{tabular}{c|c|c|c|c}
            Assignment                            & Minterm Type & Generalization                & UB      & LB      \\
            \hline
            $\as_1=\lnot r_1 \lnot r_2 \lnot r_3$ & UNSAT        & $\as_1^+=\lnot r_3$           & $0.5$   & $0$     \\
            $\as_2=\lnot r_1 \lnot r_2 r_3$       & UNSAT        & $\as_2^+=\lnot r_1 \lnot r_2$ & $0.375$ & $0$     \\
            $\as_3=\lnot r_1 r_2 r_3$             & SAT          & $\as_3^+=r_2r_3$              & $0.375$ & $0.25$  \\
            $\as_4=r_1 \lnot r_2 r_3$             & SAT          & $\as_4^+=r_1r_3$              & $0.375$ & $0.375$
        \end{tabular}
    \end{table}
    The solving process is summarized in~\cref{tbl:ressat-solve-example}.
    In the beginning, the selector $\select(r_1,r_2,r_3)$ is initialized without clauses,
    and the sets $C_\top$ and $C_\bot$ to collect SAT and UNSAT cubes are empty.
    Suppose $\select$ first selects an assignment $\as_1=\lnot r_1 \lnot r_2 \lnot r_3$.
    Since $\pcf{\pf}{\as_1}$ is unsatisfiable due to the conflict between $C_4$ and $C_5$,
    the subroutine \texttt{MinimalConflicting} returns $\as_1^+=\lnot r_3$,
    which is the minimal conflicting assignment responsible for this conflict.
    Note that this minimal conflicting assignment $\as_1^+$ reflects an upper bound of $0.5$ for $\spb{\Qf}$.
    The selector $\select$ is then strengthened through conjunction with the negation of $\as_1^+$ to block the searched subspace.
    Next, suppose $\as_2=\lnot r_1 \lnot r_2 r_3$ is selected.
    Under $\as_2$,
    formula $\pcf{\pf}{\as_2}$ is unsatisfiable due to the conflict among clauses $C_1$, $C_2$, and $C_3$,
    and the minimal conflicting assignment $\as_2^+$ equals $\lnot r_1 \lnot r_2$.
    After conjoining $\select$ with $\lnot \as_2^+$, suppose $\as_3=\lnot r_1 r_2 r_3$ is chosen.
    Formula $\pcf{\pf}{\as_3}$ is satisfiable through the assignment $\mu_3=\lnot e_1 e_2 \lnot e_3$.
    The subroutine \texttt{MinimalSatisfying} is invoked to generalize $\as_3$ to $\as_3^+=r_2r_3$,
    which reflects a lower bound of $0.25$ for $\spb{\Qf}$.
    Similarly, the negation of $\as_3^+$ is conjoined with $\select$.
    Next, let the assignment chosen by $\select$ be $\as_4=r_1 \lnot r_2 r_3$.
    Since $\pcf{\pf}{\as_4}$ is satisfiable through the assignment $\mu_4=\lnot e_1 \lnot e_2 \lnot e_3$,
    assignment $\as_4$ is generalized to $\as_4^+=r_1r_3$ by \texttt{MinimalSatisfying}.
    After conjoined with $\lnot \as_4^+$,
    formula $\select$ becomes unsatisfiable,
    which indicates the Boolean space over $\{r_1,r_2,r_3\}$ has been explored exhaustively.
    At the end, we have
    $C_\bot=\{\as_1^+,\as_2^+\}=\{\lnot r_3,\lnot r_1 \lnot r_2\}$ and
    $C_\top=\{\as_3^+,\as_4^+\}=\{r_2r_3,r_1r_3\}$.
    The subroutine \texttt{ComputeWeight} is finally invoked and returns $0.375$ as the satisfying probability of $\Qf$.

    For approximate SSAT solving, suppose the procedure is forced to terminate right after $\as_3^+$ is collected.
    The subroutine \texttt{ComputeWeight} will be invoked over $C_\top=\{r_2r_3\}$ and $C_\bot=\{\lnot r_3,\lnot r_1 \lnot r_2\}$.
    The cubes in $C_\top$ or $C_\bot$ are negated into CNF formulas for weighted model counting.
    To compute an upper bound,
    the UNSAT cubes $\lnot r_3$ and $\lnot r_1 \lnot r_2$ are rewritten into a CNF formula $(r_3)\land(r_1 \lor r_2)$ and yields a probability of $0.375$ with respect to the weights specified by the prefix.
    This probability is the satisfying probability of the negation of the UNSAT cubes,
    which gives an upper bound of $0.375$ for $\spb{\Qf}$.
    Similarly, we can obtain a lower bound of $0.25$ for $\spb{\Qf}$ from the SAT cube $r_2 r_3$.
\end{example}

\section{Applications}
In this section, we discuss several applications of random-exist quantified SSAT formulas.

\subsection{Probability of success in planning}
Many planning problems can be formulated in terms of forall-exist QBFs,
i.e., QBFs of the form $\Qf=\forall X,\exists Y.\pf(X,Y)$.
Changing the universal quantifiers of these QBFs to randomized ones yields random-exist quantified SSAT formulas.
Under the game interpretation of QBFs,
the satisfying probability of such an SSAT formula corresponds to the likelihood
for the existential player to win the game if the universal player decides its moves at random.
In~\cref{sect:ressat-evaluation},
we will use the \textit{strategic companies} problem~\cite{Cadoli1997} as an example
to evaluate SSAT solvers on planning applications.

\subsection{Probabilistic circuit verification}
The second application is the formal verification of \textit{probabilistic design}.
As probabilistic errors are becoming more common in advanced nanometer technology,
the \textit{probabilistic equivalence checking} (PEC) problem asks to compute the probability for a probabilistic circuit to produce different outputs from its faultless specification.
PEC can be encoded into a random-exist quantified SSAT formula~\cite{LeeTC18ProbDesign}.


\subsection{L'H\^{o}pital / l'Hospital}

\begin{frame}{Limits with L'H\^{o}pital}
  \begin{itemize}
    \item
      \textbf{Intuitive:}\\
      \begin{displaymath}
        \lim\limits_{n \rightarrow \infty} 2 + \dfrac{1}{n}
        = 2  + \dfrac{1}{\infty} = 2
      \end{displaymath}
      \vspace{0em}\\
    \item<2- |handout:1>
      \textbf{With L'H\^{o}pital:}
      \begin{itemize}
        \item
          Let $f, \, g : \mathbb{N} \rightarrow \mathbb{R}$
        \item
          If
          \begin{math}
            \lim\limits_{n \to \infty} f(n)
              = \lim\limits_{n \to \infty} g(n)
              = \infty / 0
          \end{math}
      \end{itemize}
      \begin{displaymath}
        \Rightarrow \lim\limits_{n \rightarrow \infty} \dfrac{f(n)}{g(n)}
          = \lim\limits_{n \rightarrow \infty} \dfrac{f'(n)}{g'(n)}
      \end{displaymath}
    \item<3- |handout:1>
      \textbf{Holy inspiration}
      \begin{center}
        you need a doctoral degree for that
      \end{center}
  \end{itemize}
\end{frame}

%-------------------------------------------------------------------------------

\begin{frame}{Limits with L'H\^{o}pital}
  \textbf{The limit can not be determined in the way of an Engineer:}
  \begin{displaymath}
    \lim_{n \to \infty} \dfrac{\ln (n)}{n}
      = \dfrac{\lim_{n \to \infty}\; \ln (n)}{\lim\limits_{n \to \infty}\; n}
    \hspace{1em} \stackrel{\text{plugging in}}{\longrightarrow} \hspace{1em}
      \dfrac{\infty}{\infty}
  \end{displaymath}
  \textbf{Determine the limit using L'H\^{o}pital:}
  \begin{displaymath}
    \lim\limits_{n \rightarrow \infty} \dfrac{f(n)}{g(n)}
      = \lim\limits_{n \rightarrow \infty} \dfrac{f'(n)}{g'(n)}
  \end{displaymath}
\end{frame}

%-------------------------------------------------------------------------------

\begin{frame}{Limits with L'H\^{o}pital}
  \begin{block}{\textbf{Using L'H\^{o}pital:}}
    Numerator: \; $\textit{\textbf{f(n)}}\!: n \mapsto \ln (n)$\\
    Denominator: $\textit{\textbf{g(n)}}\!: n \mapsto n$\\
    \hspace{1.5em}
    $\Rightarrow f'(n) = \dfrac{1}{n}$ \; (derivation from Numerator)\\
    \hspace{1.5em}
    $\Rightarrow g'(n) = 1$\; (derivation from Denominator)\\
    \begin{displaymath}
      \lim\limits_{n \rightarrow \infty} \dfrac{f'(n)}{g'(n)}
        = \lim\limits_{n \rightarrow \infty} \dfrac{1}{n} = 0
      \hspace{0.5em} \Rightarrow \hspace{0.5em}
      \lim\limits_{n \rightarrow \infty} \dfrac{f(n)}{g(n)}
        = \lim\limits_{n \rightarrow \infty} \dfrac{\ln (n)}{n} = 0
    \end{displaymath}
  \end{block}
\end{frame}

%-------------------------------------------------------------------------------

\begin{frame}{Limits with L'H\^{o}pital}
  \textbf{What can we take for granted without proofing?}
  \begin{itemize}
    \item
      Only things that are trivial
    \item
      It is always better to proof it
  \end{itemize}
  \textbf{Examples:}
  \begin{eqnarray*}
    \lim\limits_{n \rightarrow \infty} \dfrac{1}{n} &= \; 0
      &\hspace{2em} \text{is trivial}\\
    \lim\limits_{n \rightarrow \infty} \dfrac{1}{n^2} &= \; 0
      &\hspace{2em} \text{is trivial}\\
    \lim\limits_{n \rightarrow \infty} \dfrac{\log (n)}{n} &= \; 0
      &\hspace{2em} \text{use L'Hopital}
  \end{eqnarray*}
\end{frame}


\subsection*{Q. 1}
\vspace{-2em}
\begin{center}
\begin{karnaugh-map}[4][4][1][$CD$][$AB$]
\minterms{0, 1, 5, 8, 9, 10, 11, 13, 15}
\implicant{1}{9}
\implicant{13}{11}
\implicant{8}{10}
\implicantedge{0}{1}{8}{9}
\end{karnaugh-map}
\begin{karnaugh-map}[4][4][1][$CD$][$AB$]
\maxterms{2,3,4,6,7,12,14}
\implicant{3}{6}
\implicantedge{4}{12}{6}{14}
\end{karnaugh-map}
\end{center}
\vspace{-2.5em}
\paragraph{(a)}$F(A,B,C,D)=B'C'+C'D+AD+AB'$
\vspace{-1em}
\paragraph{(b)}$F(A,B,C,D)=(B+C)'+(C+D')'+(A'+D')'+(A'+B)'$
\vspace{-1em}
\paragraph{(c)}$F(A,B,C,D)=((B'C')'(C'D)'(AD)'(AB')')'$
\vspace{-1em}
\paragraph{(d)}$F(A,B,C,D)=(B'+D)(A+C')$
\vspace{-1em}
\paragraph{(e)}$F(A,B,C,D)=((B'+D)'+(A+C')')'$
\vspace{-1em}
\paragraph{(f)}$F(A,B,C,D)=(BD')'(A'C)'$


\section{More Gluing; Branching}
\subsection{A More Detailed Gluing Example}
We have seen how to glue two copies of $\mathbb C$ to form the Riemann sphere $\mathbb C_\infty$.
We are gonna try something more interesting:
The Riemann surface $R$ associated with $w^2=z^3-z$.
Topologically, we know it is homeomorphic to the torus with $4$ points removed.
We already know its conformal structure, but we are also interested in the analytic functions on it.
We want to compactify $R$ by adding $4$ points.
But we already know (from example sheet) that we can extend $R$ to the Riemann surface $R_1=\{(z,w)\in\mathbb C:w^2=z^3-z\}$, so it remains to compactify $R$ by adding the point $\infty$.
The idea for this is to perform a change of coordinate sending $\infty$ to a finite point.
Consider $u=1/z$ and $v=z/w$ (the method to obtain it will be covered in Algebraic Geometry), so $z=1/u$ and $w=z/v=1/{uv}$, so the original equation becomes $u=v^2(1-u^2)$.
The set $R_2=\{(z,w)\in\mathbb C^2:u=v^2(1-u^2)\}$ is then a Riemann surface where the atlas is defined by the restriction of the projections $\pi,\tau$ to the first and second coordinate.
One can do some technical work to check that it works and $\pi,\tau$ are analytic functions under this conformal structure.
We are going to glue $R_1$ and $R_2$ together to get a compact Riemann surface.
The gluing map is given by $\Phi(z,w)=(u,v)=(1/z,z/w)$ and $\Phi^{-1}(u,v)=(z,w)=(1/u,1/(uv))$ between $S_1=R_1\setminus\{(0,0),(\pm 1,0)\}$ and $S_2=R_1\setminus\{(0,0)\}$.
These are conformal equivalences as the coordinate functions are holomorphic and the atlases are defined byb coordinate projection.
Glue them together gives $\hat{R}=R_1\cup_\Phi R_2$ which is connected.
Before we check that it is Hausdorff, we want to first note that $\hat\pi_1:R_1\to\mathbb C_\infty$ via $(z,w)\mapsto z$ and $\hat{\pi}_2:R_2\to\mathbb C_\infty$ via $(u,v)\mapsto 1/u$ satisfy $\hat\pi_1=\hat\pi_2\circ\Phi$.
So they define a continuous function $\hat\pi$ on $\hat{R}$ (which is automatically meromorphic once we can show that $\hat{R}$ is Hausdorff hence is a Riemann surface).
Let $i_1:R_1\to\hat{R}$ and $i_2:R_2\to\hat{R}$ are the respective inclusions, then to see $\hat{R}$ is Hausdorff, it suffices to seperate $\hat{R}\setminus i_2(R_2)=\{i_1(0,0),i_1(\pm 1,0)\}$ from $\hat{R}\setminus i_1(R_1)=\{i_2(0,0)\}$.
This can be done by simply taking $\hat\pi^{-1}(D(0,2))$ and $\hat\pi^{-1}(\mathbb C_\infty\setminus\bar{D}(0,2))$.\\
Now to see $\hat{R}$ is compact, we shall prove it is sequential compact.
Choose a sequence $(p_n)_{n\ge 0}$ in $\hat{R}$.
Now if we, via restricting to a subsequence, have $|\hat\pi(p_n)|\le M$ for all $n$, then a further subsequence of $\hat\pi(p_n)$ converges to some $z_0$.
But there are at most two $w_0$ such that $i_1(z_0,w_0)\in\hat{R}$, so $(p_n)$ has a further subsequence that converges to $i_1(z_0,w_0)$ for one of those $w_0$.
Otherwise $|\hat\pi(p_n)|\to\infty$, but $p_\infty=i_2(0,0)$ is the only point of $\hat{R}$ whose image under $\hat\pi$ is $\infty$, therefore $p_n\to p_\infty$ as $n\to\infty$.
Either way there is a convergent subsequence, so $\hat{R}$ is sequential compact hence compact.\\
In summary, we obtained a compact Riemann surface $\hat{R}$ associated with $w^2=z^3-z$.
Just like $\pi$ extends to a meromorphic function $\hat\pi$, we can extend $g$ to a meromorphic $\hat{g}$ in the same way.


\chapter{Primitive Machines}
\label{chap:basic}

In this chapter, we define several classes of \textit{primitive} machines.\footnote{Asperti and Ricciotti~\cite{asperti2015} call these machines
  \textit{basic} machines.}  These machines are defined on an arbitrary finite alphabet $\Sigma$, but they have at most one tape, and they terminate
after at most one transition.  Primitive machines are the only concrete machines for that we give transition functions $\delta$ explicitly.  They are
also the only concrete machines, for that we fully specify the type of machine states $Q$.  In the following two chapters, we will show how to combine
these machines and build (and verify) complex machines without mentioning $Q$ or $\delta$ again.  All states and transition functions will be derived
from these machines.

\section{$\MS{Null}$}
\label{sec:Null}

\setCoqFilename{ProgrammingTuringMachines.TM.Basic.Null}

The machine $\MS{Null}_\Sigma$ is parametrised over the alphabet $\Sigma$.  Because $\Sigma$ is always clear from the context, we leave the index out.
We fix an alphabet $\Sigma$.  $\MS{Null}$ has zero tapes and terminates immediately, i.e.\ after $0$ steps.

\begin{definition}[$\MS{Null}$][Null]
  \label{def:Null}
  $\MS{Null} : \TM_\Sigma^{\mkern+1mu 0}$ is defined as follows:
  \begin{align*}
    Q          &:= \Unit \\
    start      &:= \unit \\
    \delta ~\_ &:= (\unit, \nil) \\
    halt   ~\_ &:= \true
  \end{align*}
\end{definition}
Note that if we have an unlabelled machine $M:\TM_\Sigma^n$, we implicitly label their states over $\Unit$ with the labelling function
$lab_M(q):=\unit$.

% The correctness relation says exactly that the tapes don't change:
The correctness relation is the universal relation, because empty vectors do not have information.  However, the correctness lemma also states that
the machine terminates in $0$ steps.
\begin{lemma}[Correctness of $\MS{Null}$][Null_Sem]
  \label{lem:Null_Sem} $\MS{Null} \RealiseIn0 NullRel$ with $NullRel := \lambda~t~t'.~ \True$.
\end{lemma}
\begin{proof}
  By execution.  The machine terminates after zero steps in the state $\unit$.
\end{proof}

\section{$\MS{DoAct}$}
\label{sec:DoAct}

\setCoqFilename{ProgrammingTuringMachines.TM.Basic.Mono}

Machines of the next class, $\MS{DoAct}~a : \TM_\Sigma^1(L)$, do only one action $a:\Act$ (i.e.\ they optionally write a symbol and move the head of
the tape) and terminate.
\begin{definition}[$\MS{DoAct}~a$][DoAct]
  \label{def:DoAct}
  Let $a:\Act_\Sigma$.  Then $\MS{DoAct}~a : \TM_\Sigma^1$ is defined as follows:
  \begin{align*}
    Q          &:= \Bool \\
    start      &:= \false \\
    \delta ~\_ &:= (\true, \Vector{a}) \\
    halt   ~ b &:= b
  \end{align*}
\end{definition}
The semantics of $\MS{DoAct}$ is easily expressed using the function $\MS{doAct}$ (see Definition~\ref{def:step}).  The machine terminates after one
transition:
\begin{lemma}[Correctness of $\MS{DoAct}$][DoAct_Sem]
  \label{lem:DoAct_Sem} $\MS{DoAct}~a \RealiseIn1 DoActRel~a$ with
  \[
    DoActRel~a := \lambda t~t'.~ t'[0] = \MS{doAct}~t[0]~a.
  \]
\end{lemma}
% \begin{proof}
%   By execution.
% \end{proof}
We define some abbreviations:
\begin{definition}[Machine classes derived from $\MS{DoAct}$][DoAct_Derived]
 \label{def:DoAct-derived}
 \begin{align*}
   \MS{Move}       ~d &:= \MS{DoAct} (\None, d) \\
   \MS{Write}    ~s   &:= \MS{DoAct} (\Some{s}, \MS{N}) \\
   \MS{WriteMove}~s~d &:= \MS{DoAct} (\Some{s}, d)
 \end{align*}
\end{definition}

\section{$\MS{Read}$}
\label{sec:basic_machines-Read}

$\MS{Read} : \TM_\Sigma^1(\Option(\Sigma))$ is an interesting class of labelled one-tape machines.  The machines of this class have one terminating
state for each symbol of the alphabet $\Sigma$.  They read the current symbol from the tape and terminate in the state that corresponds to that
symbol.  For the case that there is no current symbol, they also have a distinct terminating state.  The labelling function maps the terminating state
for the symbol $s$ to the label $\Some{s}$.

\begin{definition}[$\MS{Read}$][ReadChar]
  The machine $\MS{Read} : \TM_\Sigma^1(\Option(\Sigma))$ is defined as follows:
  \begin{align*}
    Q          &:= \Bool+\Sigma \\
    start      &:= \inl \false \\
    \delta (\_, s) &:=
                     \begin{cases}
                       (\inl \true, \Vector{(\None, N)}) & s[0] = \None \\
                       (\inr c, \Vector{(\None, N)})     & s[0] = \Some c
                     \end{cases} \\
    halt   ~ (\inl  b) &:= b \\
    halt   ~ (\inr \_) &:= \true \\
    lab    ~ (\inl \_) &:= \None \\
    lab    ~ (\inr  s) &:= \Some s
  \end{align*}
\end{definition}

The correctness lemma of $\MS{Read}$ states that the machine terminates after one step, leaves the tape unchanged, and that the label of the
terminating state corresponds to the current symbol on the tape.

\begin{lemma}[Correctness of $\MS{Read}$][ReadChar_Sem]
  \label{lem:Read_Sem} $\MS{Read} \RealiseIn{1} ReadRel$ with
  \[
    ReadRel := \lambda~t~(l,t').~ l = \MS{current}~t[0] \land t' = t
  \]
\end{lemma}
\begin{proof}
  Case distinction over $\MS{current}~t[0]$.  Both cases follow by executing the machine one step.
\end{proof}

%%% Local Variables:
%%% TeX-master: "thesis"
%%% End:


\section{Discontinuous Galerkin Method}
\label{sec:dg}

Here we briefly outline the DG method for the moment equations.
(See, e.g., \cite{cockburnShu_2001}, for a comprehensive review on the application of DG methods to solve hyperbolic conservation laws.)
Since we do not include any physics that couples the energy dimension, the particle energy $\epsilonNu$ is simply treated as a parameter.
For notational convenience, we will suppress explicit energy dependence of the moments.
Employing Cartesian coordinates, we write the moment equations in $d$ spatial dimensions as
\begin{equation}
  \pd{\vect{\cM}}{t}+\sum_{i=1}^{d}\pderiv{}{x^{i}}\big(\,\vect{\cF}^{i}(\vect{\cM})\,\big)
  =\frac{1}{\tau}\,\vect{\cC}(\vect{\cM}),
  \label{eq:angularMomentsCartesian}
\end{equation}
where $x^{i}$ is the coordinate along the $i$th coordinate dimension.
We divide the spatial domain $D$ into a disjoint union $\mathscr{T}$ of open elements $\bK$, so that $D = \cup_{\bK \in \mathscr{T}}\bK$.
We require that each element is a $d$-dimensional box in the logical coordinates; i.e.,
\begin{equation}
  \bK=\{\,\vect{x} : x^{i} \in K^{i} := (\xL^{i},\xH^{i}),~|~i=1,\ldots,d\,\},
\end{equation}
with surface elements denoted $\tilde{\bK}^{i}=\times_{j\ne i}K^{j}$.
We let $|\bK|$ denote the volume of an element
\begin{equation}
  |\bK| = \int_{\bK}d\vect{x}, \quad\text{where}\quad d\vect{x} = \prod_{i=1}^{d}dx^{i}.
\end{equation}
We also define $\tilde{\vect{x}}^{i}$ as the coordinates orthogonal to the $i$th dimension, so that as a set $\vect{x}=\{\tilde{\vect{x}}^{i},x^{i}\}$.
The width of an element in the $i$th dimension is $|K^{i}|=\xH^{i}-\xL^{i}$.

We let the approximation space for the DG method, $\mathbb{V}^{k}$, be constructed from the tensor product of one-dimensional polynomials of maximal degree $k$.
Note that functions in $\mathbb{V}^{k}$ can be discontinuous across element interfaces.
The semi-discrete DG problem is to find $\vect{\cM}_{h}\in\mathbb{V}^{k}$ (which approximates $\vect{\cM}$ in Eq.~\eqref{eq:angularMomentsCartesian}) such that
\begin{align}
  &\pd{}{t}\int_{\bK}\vect{\cM}_{h}\,v\,d\vect{x}
  +\sum_{i=1}^{d}\int_{\tilde{\bK}^{i}}
  \big(\,
    \widehat{\bcF}^{i}(\vect{\cM}_{h})\,v\big|_{\xH^{i}}
    -\widehat{\bcF}^{i}(\vect{\cM}_{h})\,v\big|_{\xL^{i}}
  \,\big)\,d\tilde{\bx}^{i} \nonumber \\
  &\hspace{24pt}
  -\sum_{i=1}^{d}\int_{\bK}\bcF^{i}(\vect{\cM}_{h})\,\pderiv{v}{x^{i}}\,d\vect{x}
  =\f{1}{\tau}\int_{\bK}\bcC(\vect{\cM}_{h})\,v\,d\vect{x},
  \label{eq:semidiscreteDG}
\end{align}
for all $v\in\mathbb{V}^{k}$ and all $\bK\in\mathscr{T}$.

In Eq.~\eqref{eq:semidiscreteDG}, $\widehat{\bcF}^{i}(\vect{\cM}_{h})$ is a numerical flux, approximating the flux on the surface of $\bK$ with unit normal along the $i$th coordinate direction.
It is evaluated with a flux function $\vect{\mathscr{F}}^{i}$ using the DG approximation from both sides of the element interface; i.e.,
\begin{equation}
  \widehat{\bcF}^{i}(\vect{\cM}_{h})\big|_{x^{i}}=\vect{\mathscr{F}}^{i}(\vect{\cM}_{h}(x^{i,-},\tilde{\bx}^{i}),\vect{\cM}_{h}(x^{i,+},\tilde{\bx}^{i})),
\end{equation}
where superscripts $-/+$ in the arguments of $\vect{\cM}_{h}$ indicate that the function is evaluated to the immediate left/right of $x^{i}$.
In this paper we use the simple Lax-Friedrichs (LF) flux given by
\begin{equation}
  \vect{\mathscr{F}}_{\mbox{\tiny LF}}^{i}(\vect{\cM}_{a},\vect{\cM}_{b})
  =\f{1}{2}\,\big(\,\bcF^{i}(\vect{\cM}_{a})+\bcF^{i}(\vect{\cM}_{b})-\alpha^{i}\,(\,\vect{\cM}_{b}-\vect{\cM}_{a}\,)\,\big),
  \label{eq:fluxFunctionLF}
\end{equation}
where $\alpha^{i}$ is the largest eigenvalue (in absolute value) of the flux Jacobian $\partial\bcF^{i}/\partial\vect{\cM}$.
For particles propagating at the speed of light, we can simply take $\alpha^{i}=1$ (i.e., the global LF flux).

\begin{rem}
For simplicity, in Eq.~\eqref{eq:semidiscreteDG}, we have approximated the opacities $\sigma_{\Ab}$ and $\sigma_{\Scatt}$ (and thus $\xi$ and $\tau$) on the right-hand side of Eq.~\eqref{eq:angularMomentsCartesian} with constants in each element; i.e., $\sigma_{\Ab},\sigma_{\Scatt}\in\bbV^{0}$.
\end{rem}