text:
\documentclass[12pt]{article}

\usepackage{setspace}

\usepackage{graphicx, color, fancyhdr, tikz-cd, enumitem, framed, adjustbox, bbm, upgreek, xcolor, manfnt}
\usepackage[framed,thmmarks]{ntheorem}
\usepackage[framemethod=tikz]{mdframed}
\usepackage{hyperref}

\hypersetup{
	colorlinks = true,
	linkcolor = [rgb]{0,0,0.5},
	citecolor = [rgb]{0.6,0,0},
	urlcolor = [rgb]{0,0,0.5}
}
\usepackage[style=alphabetic, bibencoding=utf8]{biblatex}
%Set the bibliography file
\bibliography{sources}

%lots of font stuff
\usepackage[T1]{fontenc}
\usepackage[urw-garamond]{mathdesign}
\usepackage{garamondx}
\let\mathcal\undefined
\newcommand{\mathcal}[1]{\text{\usefont{OMS}{cmsy}{m}{n}#1}}

%Document-Specific includes
\usepackage{ytableau}
\usepackage{mathtools}
\usepackage{scalerel}

%Replacement for the old geometry package
\usepackage{fullpage}
\usepackage{amsmath}

%Input my definitions
\input{./mydefs.tex}

%Shade definitions
\theoremindent0cm
\theoremheaderfont{\normalfont\bfseries}
\def\theoremframecommand{\colorbox[rgb]{0.9,1,.8}}
\newshadedtheorem{defn}[thm]{Definition}

%Set apart my theorems and lemmas and such
\surroundwithmdframed[outerlinewidth=0.4pt,
  innerlinewidth=0pt,
  middlelinewidth=1pt,
  middlelinecolor=white,
  topline=false,bottomline=false,rightline=false,leftmargin=2em]{thm}
\surroundwithmdframed[outerlinewidth=0.4pt,
  innerlinewidth=0pt,
  middlelinewidth=1pt,
  middlelinecolor=white,
  topline=false,bottomline=false,rightline=false,leftmargin=2em]{lem}
\surroundwithmdframed[outerlinewidth=0.4pt,
  innerlinewidth=0pt,
  middlelinewidth=1pt,
  middlelinecolor=white,
  topline=false,bottomline=false,rightline=false,leftmargin=2em]{cor}
  \surroundwithmdframed[outerlinewidth=0.4pt,
  innerlinewidth=0pt,
  middlelinewidth=1pt,
  middlelinecolor=white,
  topline=false,bottomline=false,rightline=false,leftmargin=2em]{prop}
  \surroundwithmdframed[outerlinewidth=0.4pt,
  innerlinewidth=0,
  middlelinewidth=1pt,
  middlelinecolor=white,
  topline=false,bottomline=false,rightline=false,leftmargin=2em]{rmk}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%% Customize Below %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%header stuff
\setlength{\headsep}{24pt}  % space between header and text
\pagestyle{fancy}     % set pagestyle for document
\lhead{General Exam Outline} % put text in header (left side)
\rhead{Nico Courts} % put text in header (right side)
\cfoot{\itshape p. \thepage}
\setlength{\headheight}{15pt}
%\allowdisplaybreaks

% Document-Specific Macros
\newcommand*{\ttc}{{\large $\triangle$}\kern-0.86em\raisebox{0.3ex}{$\scaleobj{0.78}\otimes$}\hspace{1ex}}
\DeclareMathOperator{\Spc}{Spc}
\DeclareMathOperator{\Pol}{Pol}

\begin{document}
%make the title page
\title{Schur Duality and Strict Polynomial Functors}
\author{Nico Courts}
\date{Exam Presentation: March 10th, 2020, 10:15am, DEN 213}
\maketitle

%\newpage
\setcounter{tocdepth}{2}
\tableofcontents

\newpage

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%% Part I %%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Getting a taste}
Let's begin with some computations elucidating the phenomenon. Let $k=\bbC$ and $A=k[x_{ij}|1\le i,j\le 3]_{\det}$ be the polynomial ring localized
at the determinant of $(x_{ij})_{i,j}$.

Let $A(3,3)$ be the degree $3$ graded piece (from the standard grading on polynomial rings). Then
\[S(3,3)=A(3,3)^\vee=\Hom_k(A(3,3),k)\]
is the \textbf{(3,3)-Schur algebra.} This is a 165-dimensional algebra over $k$ and is one of the objects we are
planning on talking about today.

\textbf{Draw out the table for reps of $\frakS_3$ and $S(3,3)$ over $\bbC$ and signal that the representation theory is the same.}
\newpage

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%% Part II %%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Group schemes and categories}
	Next we do things a bit more elegantly. In this section we relax our definitions somewhat:
	\begin{itemize}
		\item Now $k$ can be any infinite field of characteristic zero.
		\item Now $\Gamma=\GL_n$ is the affine group scheme (over $k$)
		\item We retain the assumption that representations are finite dimensional, unless otherwise noted.
	\end{itemize}
	\subsection{The group scheme \texorpdfstring{$\GL_n$}{GLn}}
	We begin by defining the object in question. Let $A$ be the ring
	\[A\eqdef k[x_{ij}|1\le i,j\le n]_{\det}\]
	where $\det$ is the polynomial given by computing the determinant of the matrix $(x_{ij})$.

	Then
	\[\Gamma=\GL_n=\Hom_{\Algk}(A,-):\Algk\to\Grp\]
	is an affine group scheme.
	\begin{defn}
		A \textbf{representation of $\Gamma$} is defined as a scheme morphism
		\[\rho:\Gamma\to \GL(V)\eqdef \Aut(V\otimes -)\]
		where $V$ is a finite dimensional vector space over $k$.
	\end{defn}
	\begin{rmk}
		If $\dim_k V=m$, $\GL(V)$ is represented by the algebra
		\[k[\GL(V)]\cong k[y_{ij}|1\le i,j\le m]_{\det}.\]
		Yoneda lemma tells us that a representation of $\Gamma$, equivalently, is a map of algebras
		\[\rho^\ast:k[y_{ij}]_{\det}\to k[x_{ij}]_{\det}\]
		The upshot here is that representations are automatically ``algebraic''.
	\end{rmk}
	This enables us to make a simpler definition of polynomial and homogeneous representations:
	\begin{defn}
		Let $\rho:\Gamma\to \GL(V)$ be a representation. We say that it is a \textbf{polynomial representation} if
		\[\Im \rho^\ast\subseteq k[x_{ij}]\subset k[\Gamma]\]
		and that $\rho$ is a \textbf{homogeneous degree $r$} if
		\[\Im\rho^\ast\subseteq (k[x_{ij}])_r\subset k[x_{ij}]\subset k[\Gamma]\]
		where $(k[x_{ij}])_r$ is the degree $r$ graded piece of the polynomial ring.
	\end{defn}
	{\color{red} Give examples of analytic, polynomial, and homogeneous reps.}
	\begin{thm}[Schur]
		Every polynomial representation of $\Gamma$ decomposes as a direct sum of homogeneous representations.
	\end{thm}

	\begin{defn}
		From now on, let $\Pol(n)$ and $\Pol(n,r)$ denote the polynomial and homogeneous degree $r$ group scheme
		representations of $\GL_n$.
	\end{defn}

	\subsection{Comodules and the Schur algebra}
		\subsubsection{The Hopf algebra}
		The coordinate algebra $k[\Gamma]$ has not only the structure of an algebra, but of a Hopf algebra!
		The coalgebra structure is imbued by the group structure on $\Gamma$: the maps
		\[m:\Gamma\times\Gamma\to \Gamma\quad\text{and}\quad u:\ast\to \Gamma\]
		giving multiplication and unit maps induces maps
		\[\Delta:k[\Gamma]\to k[\Gamma]\otimes k[\Gamma]\quad\text{and}\quad \varepsilon:k[\Gamma]\to k\]
		that are given on the $x_{ij}$ as
		\[\Delta(x_{ij})=\sum_k x_{ik}\otimes x_{kj}\quad\text{and}\quad \varepsilon(x_{ij})=\delta_{ij}\]
		which extends to an algebra morphism multiplicatively.

		\begin{thm}
			The subspace $A(n,r)\subseteq k[\Gamma]\cong k[x_{ij}]$ is a subcoalgebra.
		\end{thm}
		The key observation here is the comultiplication preserves degree.

		\subsubsection{Comodules}
		Recall that a (right) $A=A(n,r)$ comodule is a vector space $V$ along with a map
		\[\phi:V\to V\otimes A\]
		satisfying counit and coassociativity axioms. These coalesce into a category of left $A$ comodules with morphisms
		$f:V\to W$ satisfying
		\[\phi_W\circ f(v)=(f\otimes \id)\circ \phi_V(v)\]
		We denote this category $\rcomod{A}$.

		Let $(\rho,V)\in \Pol(n,k)$ using the characterization in terms of the associated algebra morphism. Then
		we can define a right $A$-module structure on $V=\langle v_1,\dots,v_m\rangle$ by the map
		\[\phi(v_i)=\sum_jv_j\otimes \rho^\ast(x_{ij})\]

		This construction defines a map
		\[\Psi:\Pol(n,r)\to \rcomod{A(n,r)}\]
		and a key result here is the observation that
		\begin{thm}
			The map $\Psi$ given above is a functor and an equivalence of categories.
		\end{thm}

		\subsubsection{The Schur Algebra}
		\begin{defn}
			The \textbf{Schur algebra $S(n,r)$} is the linear dual
			\[S(n,r)=(A(n,r))^\vee=\Hom_k(A(n,r),k).\]
		\end{defn}
		Since $A(n,r)$ is a coalgebra, this gives $S(n,r)$ an algebra structure. A standard result is the following:
		\begin{thm}
			The categories $\lmod{S(n,r)}$ and $\rcomod{A(n,r)}$ are equivalent (isomorphic!).
		\end{thm}

	\subsection{The SW functor}
	There is a general theory which says the functors
	\[\calF:\lmod{\Lambda}\to \lmod{e\Lambda e}\quad\text{via}\quad \calF(V)=eV\]
	and
	\[\calG:\lmod{e\Lambda e}\to \lmod{\Lambda}\quad\text{via}\quad \calF(W)=\Lambda e\otimes_{e\Lambda e}W/(\Lambda e\otimes_{e\Lambda e}W)_e\]

	In this case, we can compute that for any $\xi_{\underline i,\underline j}\in S(n,r)$,
	\[\xi_\alpha\xi_{\underline i,\underline j}\xi_\alpha=\begin{cases}
		\xi_{\underline i,\underline j}& \underline i,\underline j\in \omega,\underline i\sim \underline j\\
		0 & \text{otherwise}
	\end{cases}\]
	so there exist unique $\sigma,\tau\in\frakS_d$ such that $\sigma\cdot\underline i=(1,1,\dots,1,0,\dots,0)=\underline l$ and $\tau\cdot\underline j=\underline l$,
	and so $\xi_{\underline i,\underline j}=\xi_{\underline l,\sigma\tau^{-1}\underline l}$.
	This shows us that we can extract from each element in $eAe$ an element $\sigma\tau^{-1}\in\frakS_d$ and in this way
	we can prove
	\begin{lem}
		If $e=\xi_\omega$ and $\Lambda=S(n,r)$,
		\[e\Lambda e\cong k\frakS_r.\]
	\end{lem}
	\begin{cor}
		The Schur Weyl functor given by $V\mapsto \xi_\omega V$ gives a functor
		\[\calF:\lmod{S(n,r)}\to \lmod{k\frakS_r}.\]
	\end{cor}
	\begin{rmk}
		As long as his functor preserves irreducibles, as does $\calG$.
	\end{rmk}

	\subsection{Strict polynomial functors}
	The idea of SPF was developed first in \cite{friedlander-suslin} and then iterated on in \cite{krause-strict-poly-func}.

	\begin{defn}\label{defn:div-powers}
		When $k$ is any commutative ring, one can define the category $P_k\subseteq \lmod{k}$ as the full subcategory of finitely-generated projective $k$-modules.
		In this paper, we require that $k$ is an infinite field. In this case, $P_k=\Vect_k$, but we use the former notation so that
		it aligns more closely with Krause's work.

		Define $\Gamma^d P_k$ to be the category of \textbf{divided powers}---the objects are the same as those of $P_k$, but such that
		\[\Hom_{\Gamma^dP_k}(V,W)=\Gamma^d\Hom_{P_k}(V,W)\]
		where $\Gamma^d X=(X^{\otimes d})^{\frakS_d}$ denotes the \textbf{$d^{\text{th}}$} divided powers of the vector space $X$.

		Finally, as a matter of notation, let
		\[\Rep\Gamma^d_k=\Rep\Gamma^dP_k=\Func(\Gamma^dP_k,\lmod k)\]
		which we (suggestively) call the \textbf{category of homogeneous degree $d$ strict polynomial functors.}
	\end{defn}
	\begin{rmk}\label{rmk:action}
		Of course since $P_k=\Vectk$, an element
		\[T\in\Rep\Gamma^d_k=\Func(\Gamma^d\Vectk,\Vectk),\]
		is a functor that, on objects, is a map $\Vectk\to \Vectk$ and on morphisms is of the form
		\[T_{VW}:\Hom_{\Gamma^d\Vectk}(V,W)=\Gamma^d\Hom_k(V,W)\to \Hom_k(T(V),T(W))\]
		which, leveraging $\otimes$-$\Hom$ adjunction, gives us a map
		\[\Gamma^d\Hom(V,W)\otimes T(V)\to T(W)\]
	\end{rmk}
	Using the idea in the last remark, Krause proves that there is another equivalence of categories:
	\begin{thm}[{\cite[Thm. 2.10]{krause-strict-poly-func}}]
		Let $d,n$ be positive integers. Then evaluation at $k^n$ induces a functor
		\[\Rep\Gamma^d_k\to \lmod{S(n,d)}\]
		which is an equivalence of categories when $n\ge d$.
	\end{thm}
	The key idea of this proof is to restrict attention to small projective generators of $\Rep\Gamma^d_k$. A class of these
	are the weight spaces $\Gamma^\lambda$ of the object $\Gamma^{d,k^n}$. Then it just remains to see that
	\[\End_{\Gamma^d_k}(\Gamma^{d,k^n})\cong S_k(n,d)\]
	and the result follows.

		\subsubsection{Monoidal structure}
		An important aspect of the Schur-Weyl functor is highlighted by Aquilino and Reischuk:
		\begin{thm}[{\cite[thm. 4.4]{aquilino-reischuk}}]
			The functor
			\[\calF=\Hom(\Gamma^\omega,-):\Rep\Gamma^d_k\to \lmod{k\frakS_d}\]
			preserves the monoidal structure defined on strict polynomial functors, i.e.
			\[\calF(X\otimes_{\Gamma_k^d}Y)\cong\calF(X)\otimes_k\calF(Y)\]
			for all $X$ and $Y$ and if $\1$ is the tensor unit,
			\[\calF(\1_{\Rep\Gamma^d_k})=\1_{k\frakS_d}.\]
		\end{thm}

		Let $V\in \Gamma^d_k$ and let
		\[\Gamma^{d,V}=\Hom_{\Rep\Gamma^d_k}(-,V)\]
		be the image of $V$ under the Yoneda embedding.

		Using that all presheaves are colimits of representable ones, one can define the tensor product and internal hom:
		\[X\otimes_{\Gamma^d_k}Y\eqdef \colim_{\Gamma^{d,V}\to X}\colim_{\Gamma^{d,W}\to Y}\Gamma^{d,V\otimes W}\]
		\[\iHom_{\Gamma^d_k}(X,Y)\eqdef \lim_{\Gamma^{d,V}\to X}\colim_{\Gamma^{d,W}\to Y}\Gamma^{d,\Hom(V,W)}\]
		which in \cite[prop 2.4]{krause-strict-poly-func} is shown to satisfy the usual adjunction:
		\begin{prop}[Krause]
			If $X,Y,Z\in\Gamma^dP_k$,
			\[\Hom_{\Gamma^d_k}(X\otimes_{\Gamma^d_k} Y,Z)\cong\Hom_{\Gamma^d_k}(X,\iHom_{\Gamma^d_k}(Y,Z))\]
		\end{prop}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%% Part III %%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Modern tools in action}
	\subsection{Triangulated and derived categories and the Balmer spectrum}
	This perspective gives us an interesting analogy between (unital, commutative) rings in algebra and category theory. Since every
	triangulated category is also additive, we can further specify that $\calC$ be triangulated:
	\begin{defn}
		A \textbf{tensor-triangulated} category $\calC$ is both a symmetric moniodal category and a triangulated category such that
		the monoidal structure preserves the triangluated structure.

		As a reminder, such a category is equipped with a tensor product $-\otimes -:\calC\times\calC\to \calC$ and unit object $\1$, along with
		a collecton distinguished triangles $\calT$ comprised of objects in $\calC$ and shift functor (an auto-equivalence) $(-)[1]:\calC\to \calC$ such that:
		$-\otimes-$ is a triangulated (or exact) functor in each entry (it takes $\calT$ to itself).
	\end{defn}
	\begin{defn}
		Let $\calC$ be a tensor-triangulated category (TTC). Then a \textbf{(thick tensor) ideal} $I\subseteq \calC$ is a full triangulated subcategory
		with the following conditons:
		\begin{itemize}
			\item \textit{(2-of-3 rule/Triangulation)} If $A,B,$ and $C\in\calC$ are objects that fit into a distinguished triangle
			\[A\to B\to C\to A[1]\]
			in $\calC$, and if any two of the three are objects in $I$, then so is the third.
			\item \textit{(Thickness)} If $A\in I$ is an object that splits as $A\cong B\oplus C$ in $\calC$, then both $B$ and $C$ belong to $I$.
			\item \textit{(Tensor Ideal)} If $A\in I$ and $B\in \calC$ then $A\otimes B=B\otimes A\in I$.
		\end{itemize}
	\end{defn}
	\begin{defn}
		Let $\calC$ be a TTC as before. Then an ideal $I\subseteq\calC$ is called a \textbf{prime ideal}
		if, whenever $A\otimes B\in I$ for some $A,B\in \calC$, either $A$ or $B$ is in $I$.

		We call the collection of all primes the \textbf{spectrum} of $\calC$ and write
		$\operatorname{Spc}(\calC)$.
	\end{defn}
	Here we define
	\[Z(S)\eqdef\{\calP\in\Spc(\calC)|S\cap\calP=\varnothing\}\]
	and define sets (for any $S\subseteq\calC$ and $A\in \calC$):
	\[U(S)\eqdef \Spc(\calC)\setminus Z(S)=\{\calP\in\Spc(\calC)|S\cap \calP\ne\varnothing\}\]
	and
	\[\supp(A)\eqdef Z(\{A\})=\{\calP\in\Spc\calC|A\notin \calP\}\]
	\begin{lem}[2.6 of \cite{balmer-spc}]
		The sets $U(S)$ for all $S\subseteq\calC$ form a basis for a topology on $\Spc\calC$.
	\end{lem}
	which we call the \textbf{Zariski topology}.

	To define the structure sheaf:
	\begin{defn}
		Let $\calC$ be a tensor-triangulated category and let $\Spc\calC$ be the construction discussed above. Then the structure sheaf on $\Spc\calC$ is given by the
		sheafification $\O_\calC$ of the presheaf
		\[\tilde\O_\calC:\operatorname{Open}(\Spc\calC)\op\to \Ring\]
		given by
		\[\tilde\O_\calC(U)\eqdef \End_{\calC/\calC_Z}(\1_U)\]
		where $U\subseteq\Spc\calC$ is an open set and $\calC_Z$ is the thick tensor ideal in $\calC$ supported
		on $Z=\Spc\calC\setminus U$. The ringed space $(\Spc \calC,\O_\calC)$ is denoted $\Spec_\text{Bal} \calC$.
	\end{defn}
	Thus we have a \textbf{locally-ringed space} $\Spec\calC$ for any TTC $\calC$.

	In Thomason \cite{thomason}, the author classifies the triangulated tensor subcategories
	of $\Dperf(X)$, thereby defining the set $\Spc\Dperf(X)$. Applying Balmer's language and structure, he proved that
	\begin{thm}[{\cite[thm. 6.3(a)]{balmer-spc}}]
		If $X$ is a topologically Noetherian scheme, then (as ringed spaces)
		\[\Spec_\text{Bal}\Dperf(X)\simeq X.\]
	\end{thm}

	Furthermore another result from Friedlander and Pevtsova \cite{friedlander-pevtsova-pi} showed (again using
	the language of $\Spec_\text{Bal}$):
	\begin{thm}[{\cite[thm. 3.6]{friedlander-pevtsova-pi},\cite[thm. 6.3(b)]{balmer-spc}}]
		Let $G$ be a finite group scheme over a field $k$. Then
		\[\Spec_\text{Bal}(\stmod(kG))\simeq\Proj(H^\bullet(G,k))\]
		where, $\stmod(kG)$ is the full subcategory of the stable module category consisting of the finitely generated modules and $H^\bullet(G,k)=\Ext_G^\bullet(k,k)$ is the cohomology ring of $G$.
	\end{thm}

	\subsection{Extensions and problems to work on}
	The following are some rough outlines of research programs that we can look into moving forward. They vary in depth and difficulty and the questions
	asked herein may not end up being the ones that are most interesting in these different areas. These do, however, provide a good starting place as we transition
	into tackling new problems.

		\subsubsection{Computing the spectrum of \texorpdfstring{$\Db(S(n,r))$}{DbS(n,r)}}
		\begin{defn}
			An algebra $\Lambda$ of \textbf{wild representation type} is one whose irreducible
			modules are in bijection with those of the free algebra $k\langle x,y\rangle$.
		\end{defn}
		\begin{thm}
			It has been shown (according to \cite{bensonI}) that the representation theory of
			algebras $\Lambda$ of wild type is \textit{undecideable} in that there exist statements about $\Lambda$-modules for which no algorithm for a Turing machine exists
			that candecide the truth or falsehood of a statement in finite time.
		\end{thm}

		Instead we can use spectra! These gives us a coarser tool to work with and understanding the thick TT subcategories of
		the representation category may give us a way at grasping what this looks like.

		A first step would be to compute $\Db(S(n,r))$ in the ``nice'' case where our field is characteristic zero. From there, there are interesting computations to be done
		for Schur algebras over fields of characteristic $p>0$ which could yield interesting results.

		\subsubsection{The representation theory of \texorpdfstring{$S(n,r)$}{S(n,r)} in positive characteristic}
		\begin{thm}[\cite{erdmann}]
			$S(3,10)$ over a field of characteristic 5 has wild representation type.
		\end{thm}

		This has dimension 816! This gives us an ample supply of computationally-tangible objects whose representation theory
		could shine light on the representation theory of wild type algebras in general.

		\subsubsection{Representation theory of the \texorpdfstring{$q$}{q}-Schur algebra}
		Recall a motiviating example (c.f. \cite{majid}) of a quantum group: $\operatorname{SL}_q(2)$, so named because it is a ``$q$-analog'' of the algebra of functions on
		$\operatorname{SL}_2$. Fix some $q\in k^\times$. Then it is defined (as an algebra) as a quotient
		\[k\langle a,b,c,d\rangle/R\]
		where $R$ is the ideal generated by the following relations:
		\[\begin{array}{ccc}
			ca=qac & ba=qab & db=qdb\\
			dc=qcd & bc=cb & da-ad=(q-q^{-1})bc
		\end{array}\]
		along with the ``$q$-determinant relation''
		\[ad-q^{-1}bc=1.\]
		Notice that setting $q=1$ makes $a,b,c,$ and $d$ commute, so we are left with the usual special linear group.

		Quantum groups and, more generally, quantum deformations of objects in commutative algebra, give mathematicians
		a way to carefully perturb objects to open up areas of research in noncommutative algebra to the the same (or similar) techniques
		used by commutative algebraists and algebraic geometers.\footnote{See, for instance Taft and Towber's \textit{Quantum deformation of flag schemes and Grassmann schemes. I. A q-deformation of the shape-algebra for GL(n)}
		or the second half of my notes on the Grassmannian at \href{https://github.com/NicoCourts/Grassmannian-Notes/}{https://github.com/NicoCourts/Grassmannian-Notes/} where I summarize this paper.}

		The $q$-Schur algebras were developed by Dipper and James and eventually summarized very nicely in \cite{donkin-q-schur} in a manner that
		reflects the character of \cite{green} and re-derives the classical results as a degenerate case of a more complex and
		interesting interplay between quantum $\GL_n$ and Iwahori-Hecke algebras.

		These algebras (and even further generalizations) are still an area of active research. The question of identifying representation
		types of $q$-Schur algebras has been completed already by Erdmann and Nakano in \cite{erdmann-nakano},
		but the other questions persist. In particular, one can ask questions like:
		\begin{itemize}
			\item What are explicit indecomposable representations and (in the finite and tame cases) how can we classify the families of indecomposable representations of these algebras?
			\item How can we generalize the idea of Schur duality to even broader families of noncommutative quasihereditary algebras?
		\end{itemize}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%  Bibliography %%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newpage

\printbibliography
\addcontentsline{toc}{section}{References}

\end{document}

max_stars_repo_name: NicoCourts/General-Exam-Paper

max_issues_repo_name: NicoCourts/General-Exam-Paper

max_forks_repo_name: NicoCourts/General-Exam-Paper


text:
\chapter{Preliminaries}
\label{chp:chapter2}
\graphicspath{{figures/}{figures/chapter2/}}
\pgfplotsset{
    table/search path={{figures/chapter2/data},{data}},
}

Isogeometric analysis (IGA), introduced by Hughes et al. \cite{HUGHES20054135}, adopts the spline basis, which underlies the CAD geometry, as the basis for analysis. Of particular importance is the positive impact of smoothness on numerical solutions, where, in many application domains, IGA outperforms classical finite elements~\cite{cottrell2009isogeometric,cottrell_studies_2007,cottrell2006isogeometric,hughes_duality_2008,bazilevs_isogeometric_2010,evans_n-widths_2009}.

In this chapter, a brief overview of spline basis functions are given in Section~\ref{sec:spline_overview}. In Section~\ref{sec:geometric_algorithms}, we review some of the most popular algorithms in manipulating splines, including \Bezier extraction and \Bezier projection. Dual basis serves as the main research tool for this thesis. The concept of dual basis functions is also introduced in Section~\ref{sec:dual_basis}.

\section{Splines}\label{sec:spline_overview}

\subsection{The univariate Bernstein basis}

The $i^{\text{th}}$ univariate Bernstein basis function of degree $p$ on the unit interval $\left[ 0,1 \right]$ is defined by
\begin{equation}
    B_i^p(\xi) = \binom {p}{i}\xi^i(1-\xi)^{p-i}
\end{equation}
where the binomial coefficient $\binom {p}{i}=\dfrac{p!}{i!(p-i)!}$, $0\leq{i}\leq{p}$. The polynomial degree superscript will be omitted when unnecessary. Matrix-vector notation will be used throughout, with bold fonts indicating matrices and vectors, e.g. the vector form of a set of Bernstein basis functions is denoted by
\begin{equation}
    \mathbf{B}^p(\xi)=
    \begin{bmatrix}
        B_0^p(\xi) \\
        B_1^p(\xi) \\
        \vdots     \\
        B_p^p(\xi)
    \end{bmatrix}.
\end{equation}
The Bernstein basis of degree $p$ spans the space of polynomials of degree $p$. The Gramian matrix $\mathbf{G}^p = [G_{i,j}^p]$ can be computed by
\begin{equation}
    G_{i,j}^p=\int_0^1B_i^p(\xi) B_j^p(\xi)d\xi,\qquad{i,j\in\left\{0,1,\dots, p\right\}}.\label{eq:gramian_bernstein}
\end{equation}
Eq.~\eqref{eq:gramian_bernstein} can be evaluated in closed form (see~\cite{farouki1988algorithms}) as
\begin{equation}
    G_{i,j}^p = \frac{\binom {p}{i}\binom {p}{j}}{(2p+1)\binom {2p}{i+j}}\label{eq:gramian_bernstein_closed_form}
\end{equation}
and its inverse (see~\cite{juttler1998dual}) as
\begin{equation}
    [G_{i,j}^p]^{-1} = \frac{(-1)^{i+j}}{\binom {p}{i}\binom {p}{j}}\sum_{k=0}^{\min(i,j)}\binom{p+k+1}{p-i}\binom{p-k}{p-i}\binom{p+k+1}{p-j}\binom{p-k}{p-j}.\label{eq:inverse_gramian_bernstein_closed_form}
\end{equation}
A Bernstein basis defined over an arbitrary interval $\left[\xi_\alpha,\xi_\beta\right]$ can be evaluated from
\begin{equation}
    B_i^p(\frac{\xi-\xi_\alpha}{\xi_\beta-\xi_\alpha}),\qquad \xi\in\left[\xi_\alpha,\xi_\beta\right].
\end{equation}
The corresponding Gramian and inverse can be obtained by multiplying and dividing the matrices in Eq.~\eqref{eq:gramian_bernstein_closed_form} and Eq.~\eqref{eq:inverse_gramian_bernstein_closed_form} by the scaling factor $(\xi_\beta-\xi_\alpha)$, respectively. For the sake of simplicity, we use the same symbols to represent the Bernstein basis defined on different intervals. A closed form expression for the $L^2$ inner product between the Bernstein basis $B_i^p(\xi)$ and polynomial $\xi^j$ is given by
\begin{equation}
    \int_0^1 B_i^p (\xi) \xi^j d\xi = \binom{p}{i} \frac{(i+j)! (p-i)!}{(p+j+1)!}.\label{eq:inner_product_bernstein_polynomial}
\end{equation}

Bernstein basis possess the following properties:
\begin{itemize}
    \item Nonnegativity: $B_i^p(\xi)\geq 0$ for all $i$, $p$, and $0\leq\xi\leq 1$;
    \item Partition of unity: $\sum_{i=0}^pB_i^p(\xi)=1$, for all $0\leq\xi\leq 1$;
    \item Interpolatory at the ends: $B_0^p(0)=B_p^p(1)=1$.
\end{itemize}
% Given a set of control points $\left\{\mathbf{P}_i\right\}_{i=0}^p$, the corresponding \Bezier curve is defined by:
% \begin{equation}
%     \mathbf{C}(\xi) = \sum_{i=1}^p\mathbf{P}_i B_i^p(\xi).
% \end{equation}

However, the global support of the Bernstein basis makes it impossible to locally edit a \Bezier curve, which is a urgent requirement for geometry modeling. This problem can be overcome by using B-splines.

\subsection{The univariate B-spline basis}

A set of univariate B-spline basis functions of degree $p$ can be uniquely defined by a non-decreasing knot vector $\mathbf{\Xi}=\left\{\xi_i\right\}_{i=0}^{n+p}$, where $n$ is the number of B-spline basis functions. In this work, we only use open knot vectors, i.e., $\xi_0=\xi_1=\dots=\xi_{p}$ and $\xi_{n}=\xi_{n+1}=\dots=\xi_{n+p}$ defined over the interval $\left[0,1\right]$. The value of the $i^{\text{th}}$ B-spline basis function is recursively defined using the Cox-de Boor formula~\cite{piegl2012nurbs}
\begin{align}
    N_{i}^0(\xi) & =\begin{cases}1 & \xi_i\leq{\xi}\leq{\xi_{i+1}}\\0 & \text{otherwise} \end{cases}                                                                                \\
    N_{i}^p(\xi) & =\frac{\xi-\xi_i}{\xi_{i+p}-\xi_i}N_{i}^{p-1}(\xi)+\frac{\xi_{i+p+1}-\xi}{\xi_{i+p+1}-\xi_{i+1}}N_{i+1}^{p-1}(\xi).
\end{align}

In addition to the properties of Bernstein basis, B-splines also possess:
\begin{itemize}
    \item Compact support: $\supp{N_{i}^p}\subset \left[\xi_i,\xi_{i+p+1}\right]$.
\end{itemize}
This feature is crucial for both geometry modeling and finite element analysis. In modeling, it allows the changing in a localized region while keeping other parts unchanges. In finite element analysis, it ensures the sparse structure of the discretized linear system.

\begin{figure}[ht]
    \center
    \begin{subfigure}[t]{\linewidth}
        \center
        \includegraphics[scale=1.2]{p=1_space}
    \end{subfigure}
    \begin{subfigure}[t]{\linewidth}
        \center
        \includegraphics[scale=1.2]{p=2_space}
    \end{subfigure}
    \caption[B-spline basis functions of different degrees.]{B-spline basis functions of different degrees. Top: linear spline basis functions defined by $\left\{0,0,1/3,2/3,1,1\right\}$. Bottom: quadratic spline basis functions defined by $\left\{0,0,0,1/3,2/3,1,1,1\right\}$.}\label{fig:spline_basis}
\end{figure}

B-splines of different degrees are shown in Figure~\ref{fig:spline_basis}. As can be seen, linear B-spline basis functions are identical to the classic hat functions that widely used in finite element analysis. Compared with quadratic Lagrange polynomials in Figure~\ref{fig:lagrange_polynomial}, quadratic B-splines are smoother across each mesh grids. Indeed, B-splines of degree $p$ have up to $p-1$ continuous derivatives. The inter-element continuity can be manipulated by repeating knots. In general, basis functions at knot of multiplicity $m$ have $C^{p-m}$ continuity.

\begin{figure}[ht]
    \center\includegraphics[scale=1.2]{p=2_space_2}
    \caption{Quadratic Lagrange polynomials defined on the same mesh grid as the splines in Figure~\ref{fig:spline_basis}.}\label{fig:lagrange_polynomial}
\end{figure}

A $d$-dimensional B-spline curve $\mathbf{S}(\xi)\in{\R^d}$ can then be defined as
\begin{equation}
    \mathbf{S}(\xi)=\sum_A N_{A,p}(\xi)\mathbf{P}_A
\end{equation}
where $\mathbf{P}_A=(p_A^1,p_A^2,\ldots,p_A^d)^T$ is a $d$-dimensional control point. An example of a B-spline curve is illustrated in Figure~\ref{fig:b-spline_and_geometry}.

\begin{figure}[ht]
    \center\includegraphics[scale=1.3]{geometry}
    \caption{A B-spline piecewise quadratic curve in $\R^2$ and the corresponding B-spline basis.}\label{fig:b-spline_and_geometry}
\end{figure}

\FloatBarrier
\subsection{The univariate NURBS basis}

B-splines can be used to represent piecewise polynomial functions but are not capable of representing conic sections (e.g. circles, ellipses and hyperbolas). NURBS(Non-Uniform Rational B-Spline) overcome this shortcoming.  A NURBS basis function can be written as
\begin{equation}
    R_{A,p}(\xi)=\dfrac{N_{A,p}(\xi)w_A}{W{(\xi)}}
\end{equation}
where $w_A$ is called a weight and
\begin{align}
    \label{eq:weight}
    W(\xi)=\sum_{A} N_{A,p}(\xi)w_A
\end{align}
is called the weight function. A $d$-dimensional rational curve $\mathbf{S}(\xi)\in{\R^d}$ can then be defined as
\begin{equation}
    \mathbf{S}(\xi)=\sum_A R_{A,p}(\xi)\mathbf{P}_A.
\end{equation}
It is often more convenient to represent the $d$-dimensional NURBS in a $(d+1)$-dimensional homogeneous space by defining $\mathbf{P}_A^w=(p_A^1w_A,p_A^2w_A,\ldots,p_A^dw_A,w_A)^T$ and the corresponding $(d+1)$-dimensional B-spline curve as
\begin{align}
    \mathbf{S}^w(\xi) & =\sum_A N_{A,p}(\xi)\mathbf{P}_A^w
\end{align}
such that each component of $\mathbf{S}^w$ can be written as
\begin{align}
    S_i(\xi) & =\dfrac{{S}_i^w(\xi)}{{S}_{d+1}^w(\xi)}.
\end{align}
In the homogeneous form, NURBS can be manipulated with standard B-spline algorithms.

\subsection{The multivariate spline basis}

In higher dimensions, Bernstein, B-spline, and NURBS basis functions are formed by the Kronecker product of univariate basis functions. For example, two-dimensional B-spline basis functions of degree $\mathbf{p}=(p_\xi, p_\eta)$ are defined by
\begin{equation}
    \mathbf{N}^\mathbf{p}(\xi,\eta)=\mathbf{N}^{p_\xi}(\xi)\otimes\mathbf{N}^{p_\eta}(\eta)
\end{equation}
where $\mathbf{N}^{p_\xi}(\xi)$ and $\mathbf{N}^{p_\eta}(\eta)$ are vectors of basis functions in the $\xi$ and $\eta$ directions, respectively. A particular multivariate basis function can be written as
\begin{equation}
    {N}_{A(i,j)}^\mathbf{p}(\xi,\eta)={N}_{i,p_\xi}(\xi){N}_{j,p_\eta}(\eta)
\end{equation}
where the index mapping is defined as
\begin{equation}
    A(i,j)=n_\eta{i}+j.
\end{equation}
The integer $n_\eta$ is the number of basis functions in $\eta$ direction. In three-dimensional space, a set of basis functions can be constructed by the Kronecker product between two-dimensional basis functions and univariate basis functions.

\section{Geometric Algorithms}\label{sec:geometric_algorithms}

\subsection{Knot insertion}

The knot insertion algorithm ensures the insertion of one or multiple knots into a knot vector $\mathbf{\Xi}$ without changing the shape and parameterization of the curve. It allows us to conduct \textit{h}-refinement (subdividing elements into smaller ones without changing the type of basis functions used) in the context of Isogeometric Analysis. The detailed algorithm of knot insertion can be found in~\cite{piegl2012nurbs}.

An example of knot insertion of the B-spline curve in Figure~\ref{fig:b-spline_and_geometry} is illustrated in Figure~\ref{fig:b-spline_h_refine}. A set of knots $\left\{\frac{1}{6}, \frac{1}{2}, \frac{5}{6}\right\}$ are inserted into the original knot vector $\mathbf{\Xi}=\left\{0,0,0,1/3,2/3,1,1,1\right\}$.  The inserted curve remains geometrically and parametrically identical to the original curve. Meanwhile, knot spans $[ \xi_i,\xi_{i+1} )$ are splitted into smaller ones.

\begin{figure}[ht]
    \center\includegraphics[scale=1.3]{h_refine}
    \caption{Knot insertion for the curve in Figure~\ref{fig:b-spline_and_geometry}. The inserted curve is geometrically and parametrically identical to the original curve.}\label{fig:b-spline_h_refine}
\end{figure}

\subsection{Degree elevation}

The degree elevation algorithm increases the polynomial degree of each B-spline basis functions while preserves the geometry and parameterization of the curve. It allows us to conduct \textit{p}-refinement (increasing the degree of basis functions without changing the number of element used) in the context of Isogemetric Analysis. The detailed algorithm of degree elevation can be found in~\cite{piegl2012nurbs}.

An example of degree elevation of the B-spline curve in Figure~\ref{fig:b-spline_and_geometry} is illustrated in Figure~\ref{fig:b-spline_p_refine}, where the original quadratic spline curve is elevated to cubic and the shape remains unchanged. Recalling that the basis is $C^{p-m}$ continuous at a knot of multiplicity $m$, it is clear that, to preserve the inter-element continuity, the multiplicity of each knots must be increased as the increase of the polynomial degree. In Figure~\ref{fig:b-spline_p_refine}, the multiplicity each knot is increased by one.

\begin{figure}[ht]
    \center\includegraphics[scale=1.3]{p_refine}
    \caption{Degree elevation for the curve in Figure~\ref{fig:b-spline_and_geometry}. The degree elevated curve is geometrically and parametrically identical to the original curve.}\label{fig:b-spline_p_refine}
\end{figure}

\subsection{\Bezier extration}

\Bezier extraction is a technique that is often used to facilitate the incorporation of isogeometric analysis into existing finite element codes~\cite{borden2011isogeometric,scott2011isogeometric}. \Bezier extraction defines an injection that maps a space spanned by B-spline basis to a space spanned by piecewise Bernstein basis. \Bezier extraction is accomplished by repeating all interior knots of a knot vector until they have a multiplicity equal to $p+1$. The interior knots repeating process defines a linear operator $\mathbf{C}$ (see~\cite{borden2011isogeometric}) such that
\begin{equation}
    \mathbf{N}(\xi)=\mathbf{C}\mathbf{B}(\xi).
\end{equation}
The localization of $\mathbf{C}$ to an element domain produces the element extraction operator $\mathbf{C}^e$.
Given control points $\mathbf{P}^e$, the corresponding B\'ezier control points $\mathbf{Q}^e$ can be computed directly as
\begin{equation}
    \mathbf{Q}^e=(\mathbf{C}^e)^T\mathbf{P}^e.
\end{equation}
A graphical depiction of B\'{e}zier extraction over an element is shown in Figure~\ref{fig:element_extraction_projection}.

\begin{figure}
    \centering
    \begin{subfigure}{\linewidth}
        \center
        \includegraphics[width=.7\linewidth]{elements_global.pdf}
        \caption{}\label{fig:element_extraction_projection}
    \end{subfigure}
    \begin{subfigure}{\linewidth}
        \center
        \includestandalone[scale = .8]{bezier_extraction_demo}
        \caption{}\label{fig:bezier_extraction_process}
    \end{subfigure}
    \caption{Illustration of \Bezier extraction and projection in one dimension for a B-spline of degree 2 and knot vector $\left\{0,0,0,1/3/2/3,1,1,1\right\}$. (a) The element extraction and projection for the second element. (b) \Bezier extraction over the entire domain.}
\end{figure}

It is possible to view \Bezier projection as a global assembly procedure. The B-spline basis vector $\mathbf{N}$ of dimension $n_N$ can be represented by a set of Bernstein basis functions $\mathbf{B}$ of dimension $n_B$ defined on each element as
\begin{equation}
	\mathbf{N} = \mathbf{A}^T\mathbf{C}\mathbf{B},
\end{equation}
where $\mathbf{C}$ is a block diagonal matrix with \Bezier element extraction operators on the diagonal and the rectangular assembly operator $\mathbf{A}$ is the permutation matrix that maps local element degrees of freedom to global degrees of freedom. The assembly operator $\mathbf{A}$ satisfies the following properties:
\begin{itemize}
	\item Each row of $\mathbf{A}$ contains a single unity-valued entry; all other entries are zero.
	\item Each column of $\mathbf{A}$ contains at most $p+1$ unity-valued entries; all other entries are zero.
	\item Compact support. The non-zero entries can be associated to no more than $p+1$ consecutive elements.
	\item If we consider the column vectors $\mathbf{A}_i$ of $\mathbf{A}$, the space $\spn\left\{\mathbf{A}_i\right\}_{i=0}^{n_N-1}$ is an $n_N$ dimensional subspace of $\mathbb{R}^{n_B}$ and $\left\{\mathbf{A}_i\right\}_{i=0}^{n_N-1}$ are orthogonal, i.e.
	      \begin{equation}
		      \mathbf{A}_i\cdot\mathbf{A}_j\neq{}0\iff{i=j}.
	      \end{equation}
\end{itemize}

The \Bezier extraction process for the quadratic B-spline basis defined by the knot vector $\{0,0,0,1/3,2/3,1,1,1\}$ is shown in Fig.~\ref{fig:bezier_extraction_process}. The assembly operator $\mathbf{A}$ for this example is given by
\begin{equation}\label{eq:assembly_matrix}
	\mathbf{A} =
	\begin{blockarray}{cccccc}
		N_0 & N_1  & N_2  & N_3  & N_4 \\
		\begin{block}{[ccccc]c}
			1 & \hfsetfillcolor{hred!10}\hfsetbordercolor{hred}\tikzmarkin{a}(0.1,-0.1)(-0.1,0.35)0 & 0 & 0 & 0 & N_0^0 \\
			0 & 1 & 0 & 0 & 0 & N_1^0 \\
			0 & 0 & 1 & 0 & 0 & N_2^0 \\
			0 & 1 & 0 & 0 & 0 & N_0^1 \\
			0 & 0 & 1 & 0 & 0 & N_1^1 \\
			0 & 0 & 0\tikzmarkend{a} & 1 & 0 & N_2^1 \\
			0 & 0 & 1 & 0 & 0 & N_0^2 \\
			0 & 0 & 0 & 1 & 0 & N_1^2 \\
			0 & 0 & 0 & 0 & 1 & N_2^2 \\
		\end{block}
	\end{blockarray},
\end{equation}
where the highlighted submatrix is the restriction of $\mathbf{A}$ onto elements $\Omega_0$ and $\Omega_1$, and onto the B-spline basis functions $N_1$ and $N_2$.

\subsection{B\'ezier projection}
\label{sec:bproject}

B\'{e}zier projection can be viewed as the inverse of extraction~\cite{thomas_bezier_2015}. It defines an surjection that maps a space spanned by  piecewise Bernstein basis onto a space spanned by B-spline basis. B\'ezier projection uses an element reconstruction operator $\mathbf{R}^e\equiv(\mathbf{C}^e)^{-1}$ such that the global control point values, corresponding to those basis functions defined over the support of an element $e$, can be determined directly from \Bezier control values as
\begin{equation}
    \mathbf{P}^e=(\mathbf{R}^e)^T\mathbf{Q}^e
\end{equation}
where $\mathbf{Q}^e$ is any field in B\'ezier form. The action of the element reconstruction operator is depicted graphically in Figure~\ref{fig:element_extraction_projection}. For example, given any function $u \in L^2$, we can compute $\mathbf{Q}^e$ as
\begin{equation}
    \mathbf{Q}^e=(\mathbf{G}^e)^{-1}\mathbf{F}^e
    \label{eq:element-Qi}
\end{equation}
where $\mathbf{G}^e$ is the Gramian matrix corresponding to the Bernstein basis with components
\begin{align}
    {G}_{ij}^e & = \int_{\Omega^e} B^e_i B^e_j \, d\Omega =\langle{B^e_{i},B^e_{j}}\rangle_{\Omega^e}\label{eq:element_gramian}
\end{align}
and
\begin{align}
    {F}^e_i & =  \int_{\Omega^e} B^e_i u \, d\Omega = \langle{B^e_{i,},u}\rangle_{\Omega^e}.
\end{align}
Note that efficiency gains can be had at the expense of accuracy by instead performing the integration in the parametric domain of the element~\cite{thomas_bezier_2015}.

The element-wise projection produces one control value for each element in the support of the function.  These values must be combined in order to provide the final control value.  A core component of the B\'ezier projection algorithm is the definition of an appropriate averaging operation. The process of computing the weights is illustrated in Figure~\ref{fig:weights}. A weighted average of the values is computed using the weighting
\begin{equation}\label{eq:Bezier_weight}
    \omega_a^e=\dfrac{\int_{\Omega^e} N_{a}^e \, d\Omega}{\int_{\Omega^A} N_{A(e,a)} \, d\Omega}
\end{equation}
where $\Omega^e$ corresponds to the physical domain of element $e$, $A(e,a)$ is a mapping from a local nodal index $a$ defined over element $e$ to a corresponding global node index $A$, and $\Omega^A$ corresponds to the physical support of $N_A$. The final averaged global control point is then calculated as
\begin{equation}
    P_A=\sum_{\Omega^e\in \Omega^A } \omega_{A(e,a)} P_{A(e,a)}.
\end{equation}
B\'ezier projection onto NURBS functions can be defined in an analogous manner~\cite{thomas_bezier_2015}.

The individual steps comprising the \Bezier projection algorithm are
illustrated in Figure~\ref{fig:loc-proj-example} where
the curve defined by $\vec{f}(t)=\left( \frac{t}{3}
    \right)^{3/2}\vec{e}_1+\frac{1}{10}\sin (\pi t )\,\vec{e}_2$,
$t\in[0,3]$ is projected onto the quadratic B-spline basis defined by
the knot vector $\left\{0,0,0,\frac{1}{3},\frac{2}{3},1,1,1\right\}$. For this example,
the algorithm proceeds as follows:

\begin{description}

    \item{Step 1:} The function $\mathbf{f}$ is projected onto the Bernstein basis of each element. This results in a set of
          \Bezier coefficients that define an approximation to $\mathbf{f}$.
          The \Bezier coefficients are indicated in part (1) of Figure~\ref{fig:loc-proj-example} by
          square markers that have been colored to match the corresponding
          element. Each \Bezier segment is discontinuous.

    \item{Step 2:} The element reconstruction operator $\mathbf{R}^e$ is used to convert the
          \Bezier control points into spline control points associated with the
          basis function segments over each element.
          The new control points are marked with inverted triangles and
          again colored to indicate the element with which the control point is
          associated. The control points occur in clusters.
          The clusters of control points represent the contributions from
          multiple elements to a single spline basis function control point.

    \item{Step 3:} Each cluster of control points is averaged to obtain a
          single control point by weighting each point in the cluster according
          to the weighting given in (\ref{eq:Bezier_weight}). The resulting control
          points are shown as circles with the relative contribution from each
          element to each control point indicated by the colored fraction of the
          control point marker. Colors in Figures~\ref{fig:weights} and~\ref{fig:loc-proj-example} are coordinated
          to illustrate where the averaging weights come from and their values.
\end{description}

\begin{figure}[htb]
    \centering
    \includegraphics[width=5in]{weights.pdf}
    \caption{\label{fig:weights}Weights over each knot span associated
        with the basis function defined by the knot vector
        $[0,0,0,\frac{1}{3},\frac{2}{3},1,1,1]$.}
\end{figure}
\begin{figure}[htb]
    \centering
    \begin{tabular}{c p{4in} p{2in}}
        (0) & \raisebox{-.5\height}{\includegraphics[width=4in]{local_proj_steps1.pdf}} & \begin{minipage}[t]{2in}Target function\end{minipage} \\
        (1) & \raisebox{-.5\height}{\includegraphics[width=4in]{local_proj_steps2.pdf}} & \begin{minipage}[t]{2in}Perform local projection to obtain \Bezier control points (represented by squares, colored to match elements)\end{minipage} \\
        (2) & \raisebox{-.5\height}{\includegraphics[width=4in]{local_proj_steps3.pdf}} & \begin{minipage}[t]{2in}Use element reconstruction operator to project \Bezier points to spline control points (represented by inverted triangles, colored to match elements)\end{minipage} \\
        (3) & \raisebox{-.5\height}{\includegraphics[width=4in]{local_proj_steps4.pdf}} & \begin{minipage}[t]{2in}Apply smoothing algorithm (contribution of each element to each control point shown by colored fraction)\end{minipage} \\
        (4) & \raisebox{-.5\height}{\includegraphics[width=4in]{local_proj_steps5.pdf}} & \begin{minipage}[t]{2in}Comparison of final function (light blue) and target function (dashed)\end{minipage}
    \end{tabular}
    \caption{\label{fig:loc-proj-example}Steps of \Bezier projection.}
\end{figure}

\section{Dual basis}\label{sec:dual_basis}
%%TODO: bezier dual basis function will be used for what?
In this section, we give a brief introduction to the concept of global and \Bezier dual basis functions. \Bezier dual basis functions will be used in Section to facilitate the solution of domain coupling problems in the dual mortar method. A dual basis is defined as a set of basis functions $\{\hat{N}_i\}_{i=1}^{n}$, which are dual to a corresponding set of primal basis functions $\{{N}_i\}_{i=1}^{n}$ in the sense that
\begin{equation}\label{eq:def:dual}
    \langle\hat{N}_i,N_j\rangle_\Omega:=\int_\Omega\hat{N}_iN_jd\Omega=\delta_{ij}, \quad\forall{}i,j\in\left[1,2,\dots,n\right],
\end{equation}
where $\delta_{ij}$ is the Kronecker delta.

\subsection{Global dual basis}

The global dual basis functions  $\{\hat{N}_i^G\}_{i=1}^{n}$ for a given set of primal basis function $\{{N}_i\}_{i=1}^{n}$ can be computed as
\begin{equation}
    \hat{N}_i^G=\sum_j G^{-1}_{ij}N_j,\label{eq:global_dual}
\end{equation}
where  $G^{-1}_{ij}$ are the components of the inverse of the Gramian matrix $\mathbf{G}$ with components $G_{ij}=\langle{N}_i,N_j\rangle_\Omega$.

In Isogeometric Analysis, we choose B-spline functions as the primal basis. One important property of B-spline functions is that they have compact support. This leads to sparse linear systems when these functions are used to define the trial and weighting function spaces in a Galerkin method. The global dual basis functions, however, do not have compact support and will result in dense linear systems when used as the weighting function space in a Galerkin method. Dual basis supports are shown in Figure~\ref{fig:bezier_extraction_illustration} where we have highlighted one B-spline function in Figure~\ref{fig:b-spline-func} and then shown the corresponding global dual basis function in Figure~\ref{fig:global_dual}.

\begin{figure}[ht]
    \center
    \begin{subfigure}{\linewidth}
        \center
        \includestandalone[scale=1]{basisfunctions}
        \caption{}\label{fig:b-spline-func}
    \end{subfigure}
    \begin{subfigure}{\linewidth}
        \center
        \includestandalone[scale=1]{dual_global_one}
        \caption{}\label{fig:global_dual}
    \end{subfigure}
    \begin{subfigure}{\linewidth}
        \center
        \includestandalone[scale=1]{bezier_dual_one}
        \caption{}\label{fig:bezier_dual}
    \end{subfigure}
    % or use \input{mytikz}
    \caption{A comparison of a B-spline basis function (a) with the corresponding global dual basis function (b) and the \Bezier dual basis function (c).}
    \label{fig:bezier_extraction_illustration}
\end{figure}

\subsection{\Bezier dual basis}

To maintain the sparsity of linear systems we will use \Bezier dual basis functions, which are computed locally and have compact support. These functions are computed using the \Bezier projection operator introduced in~\cite{thomas_bezier_2015}. The \Bezier dual basis has been shown to be effective in reducing volumetric and shear locking~\cite{MIAO2018273}, alleviating membrane locking in Kirchhoff-Love shells~\cite{greco2018reconstructed}, and as a dual mortaring strategy for elasticity problems~\cite{zou2018isogeometric}.

The construction of \Bezier dual basis functions leverages \Bezier extraction/projection~\cite{borden2011isogeometric, thomas2015bezier} and can be performed in several simple steps. For a given \Bezier element, $\Omega_e$, the element extraction operator $\mathbf{C}^e$ is computed. The element extraction operator maps a set of Bernstein polynomials $\{B_i\}_{i=1}^m$ defined over a \Bezier element, where $m$ depends on the polynomial degree of the \Bezier element in each parametric direction, into the set of global B-spline basis functions that have support over that element. The element reconstruction operator, $\mathbf{R}^e$, and the Gramian matrix, $\mathbf{G}^{e}$~\eqref{eq:element_gramian}, of the Bernstein polynomials defined over the element are then computed. The element extraction operator for the dual basis is then simply
\begin{equation}
    \hat{\mathbf{D}}^e=\text{diag}(\omega^e)\mathbf{R}^e\left[\mathbf{G}^{e}\right]^{-1}
\end{equation}
where $\text{diag}(\omega^e)$ is a diagonal matrix with the \Bezier projection weights~\eqref{eq:Bezier_weight} on the diagonal.

The restriction of a \Bezier dual basis functions $\hat{N}_i^B$ to $\Omega_e$ is then computed as
\begin{equation}
    \hat{N}^B_i\vert_{\Omega_e}=\sum_{j=1}^m\hat{D}^e_{ij}B_j.\label{eq:bezier-dual-basis}
\end{equation}
From this local definition of the dual basis over an element we have
\begin{equation}
    \int_{\Omega_e}\hat{N}^B_iN_jd\Omega=\omega^e_i\delta_{ij},
\end{equation}
and
\begin{equation}
    \A_e{} \int_{\Omega_e}\hat{N}^B_iN_jd\Omega=\delta_{ij},
\end{equation}
where $\A$ is the standard assembly operator \cite{Hug00} . The \Bezier dual basis of the B-spline basis function highlighted in Figure~\ref{fig:b-spline-func} is shown in Figure~\ref{fig:bezier_dual}. Note that the \Bezier dual basis function has the same compact support as the primal B-spline basis function.

\subsection{Rational dual basis functions}
If rational basis functions are used, the construction of the dual basis must be modified slightly. A rational dual basis must satisfy the biorthogonality requirement
\begin{align}
    \int_{\Omega} \bar{R}_A R_B \, d\Omega= \delta_{AB}.
\end{align}
A simple way to achieve biorthogonality is to define
\begin{align}
    \bar{R}_A & = W \bar{N}_A/w_A
\end{align}
where $W$ is the rational weight given in (\ref{eq:weight}). Now
\begin{align}
    \int_{\Omega} \bar{R}_A R_B \, d\Omega & = \int_{\Omega} \bar{N}_A N_B \, d\Omega = \delta_{AB}.
\end{align}

\begin{remark}
    The \Bezier dual basis functions define a quasi-interpolation operator $\mathcal{T}(f)=\sum_i \langle\hat{N}^B_i,f\rangle N_i$, which possesses the following properties:
    \begin{itemize}
        \item Optimal approximation: for $p^\text{th}$ order spline basis function and $f\in C^\infty$, the approximation error is given by~\cite{thomas_bezier_2015}
              \begin{equation}
                  \|\mathcal{T}(f)-f\|_{L^2}\leq Ch^{p+1}\|f\|_{H^{p+1}}.
              \end{equation}
        \item Boundary interpolation: for two sets of $p^\text{th}$ order spline basis functions $\{{N^s_i}\}_{i=1}^{n_s}$ and $\{{N^m_i}\}_{i=1}^{n_m}$ defined on $\left[{0,L}\right]$, if the first and last elements of $s$ are subsets of the first and last elements of $m$, then
              \begin{equation}
                  \mathcal{T}^s(f^m)(0)=f^m(0)\;\text{ and }\;\mathcal{T}^s(f^m)(L)=f^m(L),\quad\forall f^m\in\spn\{{N^m_i}\}_{i=1}^{n_m}.\label{eq:boundary_interpolation}
              \end{equation}
    \end{itemize}
    The second property is critical for the coercivity of the biharmonic problem on multi-patch domains.
\end{remark}

ext: tex


text:
\section{Timber Wolf}

Timber Wolves are far hardier than normal wolves or even dire wolves, but usually hunt in smaller packs. They are however smarter than even dire wolves, which allows them to hunt the large game of the snowy tundras and taigas they call their homes.

max_stars_repo_name: NTrixner/RaggedLandsPenAndPaper

max_issues_repo_name: NTrixner/RaggedLandsPenAndPaper

max_forks_repo_name: NTrixner/RaggedLandsPenAndPaper


text: \chapter{Comparative method}

max_stars_repo_name: adamdboult/nodeHomePage

max_issues_repo_name: adamdboult/nodeHomePage

max_forks_repo_name: adamdboult/nodeHomePage


text:
%!TEX TS-program = lualatex
%!TEX encoding = UTF-8 Unicode

\documentclass[11pt, addpoints]{exam}

%\printanswers

\usepackage{fontspec}
\setmainfont[Ligatures={TeX, Common}, BoldFont={* Bold}, ItalicFont={* Italic}, BoldItalicFont={* BoldItalic}, Numbers={OldStyle,Proportional}]{Linux Libertine O}
\setsansfont[Scale=MatchLowercase,Ligatures={TeX,Common}, Numbers={OldStyle,Proportional}]{Linux Biolinum O}
%\setmonofont[Scale=MatchLowercase]{Inconsolata}
\usepackage{microtype}

\usepackage{graphicx}
\graphicspath{{/Users/goby/Pictures/teach/300/exercises/}
	{img/}} % set of paths to search for images

\usepackage{geometry}
\geometry{letterpaper, bottom=1in}
%\geometry{landscape}                % Activate for for rotated page geometry
\usepackage[parfill]{parskip}    % Activate to begin paragraphs with an empty line rather than an indent
\usepackage{amssymb, amsmath}
\usepackage{mathtools}
\everymath{\displaystyle}

\usepackage{unicode-math}
\setmathfont[Scale=MatchLowercase, Numbers=Lining]{Asana Math}
%\setmathfont[Scale=MatchLowercase]{XITS Math}

% To define fonts for particular uses within a document. For example,
% This sets the Libertine font to use tabular number format for tables.
\newfontfamily{\tablenumbers}[Numbers={Monospaced}]{Linux Libertine O}
\newfontfamily{\libertinedisplay}{Linux Libertine Display O}

\usepackage{booktabs}
%\usepackage{tabularx}
\usepackage{longtable}
%\usepackage{siunitx}
\usepackage{array}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}

\usepackage{enumitem}
\usepackage{hyperref}
\usepackage{hanging}

\usepackage{enumitem}
\setlist{leftmargin=*}
\setlist[1]{labelindent=\parindent}
\setlist[enumerate]{label=\textsc{\alph*}.}

%\usepackage{titling}
%\setlength{\droptitle}{-60pt}
%\posttitle{\par\end{center}}
%\predate{}\postdate{}

\usepackage[sc]{titlesec}

\renewcommand{\solutiontitle}{\noindent}
\unframedsolutions
\SolutionEmphasis{\bfseries}

\renewcommand{\questionshook}{%
	\setlength{\leftmargin}{-\leftskip}%
}

\makeatletter
\def\SetTotalwidth{\advance\linewidth by \@totalleftmargin
	\@totalleftmargin=0pt}
\makeatother

\pagestyle{headandfoot}
\firstpageheader{{\scshape bi}~300: Evolution}{}{\ifprintanswers\textbf{KEY}\else Name: \enspace \makebox[2.5in]{\hrulefill}\fi}
\runningheader{}{}{\footnotesize{pg. \thepage}}
\footer{}{}{}
\runningheadrule

\newcommand*\AnswerBox[2]{%
	\parbox[t][#1]{0.92\textwidth}{%
		\begin{solution}#2\end{solution}}
	\vspace{\stretch{1}}
}

\newenvironment{AnswerPage}[1]
{\begin{minipage}[t][#1]{0.92\textwidth}%
		\begin{solution}}
		{\end{solution}\end{minipage}
	\vspace{\stretch{1}}}

\newlength{\basespace}
\setlength{\basespace}{5\baselineskip}

\begin{document}

\subsection*{Hardy-Weinberg equilibrium: natural selection (\numpoints\ points)}

This exercise will look at how \textbf{natural selection}, both positive
and negative, can alter genetic variation in a population. We'll
continue to look at a single locus with two haplotypes (\emph{A} and
\emph{a}). Natural selection can act on both the genotype and the
phenotype. For this exercise, we will assume that natural selection is
acting only on the phenotype but that the phenotype is determined
entirely by the genotype. In other words, the environment does not
affect the phenotype. When this is so, natural selection is effectively
acting directly on the genotype through the phenotype. Later in class,
we'll consider the relative contribution of the environment on the
phenotype.

\begin{questions}

\question[1]
What do think positive natural selection, or simply
\textbf{positive selection}, means? Similarly, what do you think
\textbf{negative selection} means?
\vspace*{\stretch{1}}

\question[1]
Based on your reading and group discussion, define
\textbf{relative} \textbf{fitness}.
\vspace*{\stretch{1}}

\question[1]
Describe the relationship between natural selection and
relative fitness.
\vspace*{\stretch{1}}

\question[1]
Do you think you can predict the number of generations it would take for a beneficial mutation to become fixed in a population? Explain
\vspace*{\stretch{1}}

\fullwidth{%
\textbf{Relative fitness} is represented by \emph{\textbf{w}}, which can
vary from 0 (no fitness) to 1 (maximum fitness). In models like the HWE,
one genotype is assumed to have the highest fitness. The other genotypes
may have equal or lower fitness. For example, the \emph{AA} genotype may
have the highest fitness, so \emph{w} = 1.0. \emph{Aa} may have a lower
relative fitness (\emph{w} = 0.9) and \emph{aa} may have the lowest
relative fitness (\emph{w} = 0.8). In previous HWE exercises, fitness
was assumed to be equal (\emph{w} = 1) for each genotype to satisfy the
assumption of no natural selection. We will now see how fitness
differences among genotypes affects the genetic variation of
populations.
}%end fullwidth
\newpage

\question
Assume \emph{N}\textsubscript{e} = 10,000 and a starting
frequency for Haplotype \emph{A} of 0.3. The fitness of genotype
\emph{AA} is \emph{w} = 1, the fitness of genotype \emph{Aa} is \emph{w}
= 0.75 and the fitness of genotype \emph{aa} is \emph{w} = 0.5. Predict
on the graph below how the frequency of Haplotype \emph{A} will change
in the population in response to selection. All other assumptions of
HWE, except for infinite population size, are met. (Mental question:
will drift be significant?)

\ifprintanswers
	{\bfseries %
	POP SIZE = 10,000\\
	\# POPS = 10\\
	FREQ = 0.3\\
	GENERATIONS = 1000\\
	FITNESS = 1, 0.75, and 0.5, top to bottom. }\vspace*{16\baselineskip}
\else
	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}
\fi

\question
Explain the reasoning you used to arrive at your prediction.
Compare your prediction to those made by others in your group. Discuss
any differences with your group.

\newpage

\question
On the graph below, draw the results of the simulation.

	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}

\question
Did the results agree with your predictions? Discuss ideas
with your group, and then explain why you think your results did or did
not agree.
\vspace*{\stretch{1}}

\question[1]
Based on these results, can you tell if Haplotype \emph{A}
is subject to positive selection or if Haplotype \emph{a} is subject to
negative selection? Think about this carefully, discuss with your group,
and then explain.

\ifprintanswers
	\textbf{No.}
	\vspace*{\stretch{1}}
\else
	\vspace*{\stretch{1}}
\fi

\newpage

\fullwidth{%
Without addition information we cannot determine whether natural
selection is acting positively on \emph{A} or negatively on \emph{a}. We
do know, however, that the \emph{AA} genotype has the selective
advantage in the population because it has the highest fitness. The
relative fitness difference between the genotype with the highest
fitness (\emph{w} = 1.0) and genotypes with lower fitness is called the
\textbf{selection} \textbf{coefficient} (or the \textbf{strength of
selection}), represented by \emph{\textbf{s}}. In the first simulation,
the relative fitness of \emph{Aa} was 0.75, so the selection coefficient
relative to \emph{AA} was \emph{s} = 1 -- 0.75 = 0.25.
}%end fullwidth

\question[1]
What was the selection coefficient for \emph{aa}?
\ifprintanswers
	\textbf{0.5}
	\vspace*{\stretch{0.5}}
\else
	\vspace*{\stretch{0.5}}
\fi

\fullwidth{%
Selection coefficients this large are known in natural populations but
are probably uncommon for most loci. What if the selective advantage of
a genotype is very slight, such as 0.01 or 0.02?
}% end fullwidth

\question
Assume \emph{N}\textsubscript{e} = 10,000. The starting
frequency of Haplotype \emph{A} is 0.3. The relative fitness (\emph{w})
of the three genotypes are 1.0, 0.99 and 0.98 for \emph{AA}, \emph{Aa}
and \emph{aa}, respectively. Draw your prediction for the change in
frequency for Haplotype \emph{A} on the graph.

\ifprintanswers
	{\bfseries %
	POP SIZE = 10,000\\
	\# POPS = 10\\
	FREQ = 0.3\\
	GENERATIONS = 1000\\
	FITNESS = 1, 0.99, and 0.98, top to bottom. }\vspace*{16\baselineskip}
\else
	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}
\fi

\question
Explain the reasoning you used to arrive at your
predictions. Compare your prediction to those made by others in your
group. Discuss any differences with your group.
\vspace*{\stretch{1}}
\newpage

\question
Draw the results of the simulation on this graph.
	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}

\question
Did the results agree with your predictions? Discuss ideas
with your group, and then explain why you think your results did or did
not agree.
\vspace*{\stretch{1}}

\question[1]
Let's now consider a small population with an effective
size of 100 diploid individuals. In the absence of natural selection,
calculate the probability that a new mutation will become fixed in the
population. Show your work.

\ifprintanswers
	\textbf{1/200 = 0.005} \vspace*{\stretch{1}}
\else
	\vspace*{\stretch{1}}
\fi
\newpage

\question
Assume an effective population size of 100, a starting
frequency of Haplotype \emph{A} of 0.005, and relative fitnesses of 1.0,
0.99 and 0.98 for \emph{AA}, \emph{Aa} and \emph{aa} respectively. On
the graph below, draw your prediction of the frequency change of
Haplotype \emph{A}. Draw 4 different lines (four populations) to
consider different possible outcomes.

\ifprintanswers
	{\bfseries %
	Pop Size = 100\\
	\# {\LARGE POPS = 100}\\
	FREQ = 0.005\\
	Generations = 1000\\
	Fitness = 1, 0.99, and 0.98, top to bottom. }\vspace*{16\baselineskip}

	\textbf{Run 10 times with just drift, then 10 times with selection. Compare results.}
\else
	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}
\fi

\question
Describe the results and compare them to your four
predictions.

\newpage

\fullwidth{%
Given our starting assumptions, Haplotype \emph{A} had a 0.005
probability of going to fixation due to genetic drift alone (0.5\%
chance). But, the slight selective advantage of the \emph{AA} genotype
increased the probability of fixation to about 0.02. So, instead of
fixation in about 1 of every 200 populations (on average), the slight
selective advantage led to fixation in about 2 of every 100 populations
(2\%).
}%end fullwidth

\fullwidth{%
Will natural selection always override the effects of genetic drift? No.
Even in the above simulation, genetic drift was still a factor but
selection increased the chances of fixation for the genotype with the
selective advantage. If the effective population size is small enough,
or if the strength of selection is very weak, drift will have a greater
effect than selection. If \emph{s} \textless{}\textless{}
1/(2\emph{N}\textsubscript{e}) then drift will have a greater effect
than selection on genetic variation in the population.
}%end fullwidth

\fullwidth{%
For example, if \emph{N}\textsubscript{e} is 50, then the selection
coefficient must be greater than about 0.005 (= 1/200) or genetic drift
will be the principle cause of haplotype frequency change.
}%end fullwidth

\question[2]
What should be the strength of selection in a population of
\emph{N}\textsubscript{e} = 100 to overcome the effects of genetic
drift? If \emph{N}\textsubscript{e} = 10,000 or 50,000? Show your work.

\begin{parts}
	\part $N_e =$ 100: \ifprintanswers\textbf{0.005}\fi\vspace*{\stretch{1}}

	\part $N_e =$ 10,000: \ifprintanswers\textbf{0.00005}\fi\vspace*{\stretch{1}}

	\part $N_e =$ 50,000: \ifprintanswers\textbf{0.00001}\fi\vspace*{\stretch{1}}
\end{parts}

\fullwidth{%
You must remember that genetic drift is present in populations of all
sizes. When considering both genetic drift and natural selection, drift
is more prevalent in small populations unless selection is strong. As
population size increases, even weak selection can override the effects
of genetic drift because 1/(2\emph{N}\textsubscript{e}) will be very
small.
}%end fullwidth

\fullwidth{%
This relationship between genetic drift and natural selection can have
important consequences in natural populations. For example, a beneficial
mutation in a population of an endangered species (very small
\emph{N}\textsubscript{e}) that increases survivorship in marginal
habitat is more likely to be lost due to genetic drift. In contrast,
even a slight selective advantage for resistance to antibiotics in a
population of disease-causing bacteria may spread rapidly throughout the
population in relatively few generations because the effective
population sizes of bacteria tend to be extremely large.
}

\fullwidth{%
\textbf{Heterozygotes: advantages and disadvantages}

In a few cases, individuals that are heterozygous at a locus have a
selective advantage over individuals that are homozygous at that locus.
That is, \emph{w} = 1.0 for \emph{Aa} and \emph{w} \textless{} 1 for
\emph{AA} and \emph{aa}. This is called \textbf{heterozygote advantage}.
Heterozygote advantage is also called overdominance or heterosis but I
prefer heterozygote advantage because it is self-descriptive.
}%end

\newpage

\question
Assume a population with \emph{N}\textsubscript{e} =
10,000 individuals. Heterozygotes have the selective advantage and the
coefficient of selection against the two homozygous genotypes is 0.05.
(What is \emph{w} for each homozygous genotype?). Draw your predictions
for the frequency change of Haplotype \emph{A}, given a low starting
frequency of 0.05.

\ifprintanswers
	{\bfseries %
	Pop Size = 10,000\\
	\#Pops = 10\\
	FREQ = 0.05\\
	Generations = 1000\\
	Fitness = 0.95, 1, and 0.95, top to bottom. }\vspace*{16\baselineskip}
\else
	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}
\fi

\question
Explain the reasoning you used to arrive at your
prediction. Compare your prediction to those made by others in your
group. Discuss any differences with your group.

\newpage

\question
Draw the results of the simulation on this graph.
	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}

\question[2]
Did the results agree with your predictions? Based on these
results, write a general principle to explain the effect that a
heterozygote advantage will have on the frequencies of two haplotypes at
a locus. What do you predict if the selection coefficient differs for
the two homozygotes (say, 0.05 and 0.1).

\ifprintanswers
	{\bfseries %
	Pop Size = 10,000\\
	\#Pops = 10\\
	FREQ = 0.05\\
	Generations = 1000\\
	Fitness = 0.95, 1, and 0.9, top to bottom. }
\fi

\newpage

\question
Draw the results of the simulations using s = 0.05 for
\emph{AA} and s = 0.1 for \emph{aa} on the graph below. Did they agree
with your general principle?
	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}

\question[1]
Describe the effect that the heterozygote advantage has on
genetic variation in a population.
\vspace*{\stretch{1}}

\fullwidth{%
Heterozygotes can also have a selective disadvantage relative to both
homozygotes, called \textbf{heterozygote disadvantage}, or
underdominance. (Guess which term I prefer?)
}%end fullwidth

\newpage

\question
Assume \emph{N}\textsubscript{e} = 10,000 individuals, and
the starting frequency of Haplotype \emph{A} is 0.5. Assume that both
homozygous genotypes have the same fitness (\emph{w} = 1) but the
fitness of the \emph{Aa} genotype is 0.99. What do you think will happen
to the frequency of Haplotype \emph{A} in the population? You should be
able to think of two alternatives.

\ifprintanswers
	{\bfseries %
	Pop Size = 10,000\\
	\#Pops = 10\\
	FREQ = 0.5\\
	Generations = 1000\\
	Fitness = 1, 0.99, and 1, top to bottom. }\vspace*{16\baselineskip}
\else
	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}
\fi

\question
Explain the reasoning you used to arrive at your
predictions. Compare your prediction to those made by others in your
group. Discuss any differences with your group.

\newpage

\question
Draw the results of the simulation.
	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}

\question[1]
Describe what has happened to the haplotype frequencies in
the simulated populations. How does this differ, if at all, from your
predictions?

\newpage

\question[1]
What if we assume an equal, low mutation rate of 0.01 from
\emph{A} to \emph{a} and from \emph{a} to \emph{A}. Describe how you
think the mutation rate will affect the outcome of heterozygote
disadvantage, assuming the other conditions are the same. (Hint:
remember what happened in the mutation exercise.)
\vspace*{\stretch{1}}

\question
Describe what actually happened after the simulation is
run.
\vspace*{\stretch{1}}

\question[1]
Mutations that occur in coding DNA such as the exons of a
gene are often detrimental and therefore subject to negative selection.
Assume that haplotype \emph{a} is detrimental such that any individual
that is homozygous \emph{aa} dies before reproducing (\emph{w} = 0.0)
but the effect in heterozygotes is minimal (\emph{s} = 0.1). What should
happen to haplotype \emph{A} in the population?
\vspace*{\stretch{1}}

\newpage

\question
Now assume that mutations from \emph{A} to \emph{a} occur
at a very low rate (0.01) in a population. On the graph below, draw your
prediction for the frequency of Haplotype \emph{A} in the population, if
Ne = 10,000, starting frequency of Haplotype A is 0.5, and the fitness
is as described in the previous question.

\ifprintanswers
	{\bfseries %
	Pop Size = 10,000\\
	\#Pops = 10\\
	FREQ = 0.5\\
	Generations = 1000\\
	Fitness = 1, 0.9, and 0, top to bottom.

	Mutation from A to a = 0.01\\
	Mutation from a to A = 0}\vspace*{13\baselineskip}
\else
	\begin{center}
		\includegraphics[height=20\baselineskip]{prediction_graph}
	\end{center}
\fi

\question[1]
Describe the results of the simulation. Did the results
agree with your prediction? Why do you think that Haplotype \emph{A} did
not become fixed in the population?
\vspace*{\stretch{1}}

\question[2]
Finally, discuss within your group how you think these
results might be affected by gene flow among populations. Write a brief
summary of your ideas here.

\ifprintanswers
	\textbf{No change. Pops would still evolve together.}
	\vspace*{\stretch{1}}
\else
	\vspace*{\stretch{1}}
\fi
\end{questions}

\end{document}


text:
%!TEX root = ../thesis.tex

\chapter{Appendix A: Division ring}
\label{AppendixA}

Dropping one or several axioms in the definition of a field leads to other algebraic structures. As was mentioned above, commutative rings satisfy all axioms of fields, except for multiplicative inverses. Dropping instead the condition that multiplication is commutative leads to the concept of a division ring or skew field.[nb 7] The only division rings that are finite-dimensional \(R\)-vector spaces are \(R\) itself, \(\C\) (which is a field), the quaternions \(\mathbb{H}\) (in which multiplication is non-commutative), and the octonions \(\mathbb{O}\) (in which multiplication is neither commutative nor associative). This fact was proved using methods of algebraic topology in 1958 by Michel Kervaire, Raoul Bott, and John Milnor. The non-existence of an odd-dimensional division algebra is more classical. It can be deduced from the hairy ball theorem illustrated at the right.

max_stars_repo_name: rdholkar/math-thesis-template-master

max_issues_repo_name: rdholkar/math-thesis-template-master

max_forks_repo_name: rdholkar/math-thesis-template-master


text:
\documentclass[]{book}
\usepackage{lmodern}
\usepackage{amssymb,amsmath}
\usepackage{ifxetex,ifluatex}
\usepackage{fixltx2e} % provides \textsubscript
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
  \usepackage[T1]{fontenc}
  \usepackage[utf8]{inputenc}
\else % if luatex or xelatex
  \ifxetex
    \usepackage{mathspec}
  \else
    \usepackage{fontspec}
  \fi
  \defaultfontfeatures{Ligatures=TeX,Scale=MatchLowercase}
\fi
% use upquote if available, for straight quotes in verbatim environments
\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
% use microtype if available
\IfFileExists{microtype.sty}{%
\usepackage{microtype}
\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
}{}
\usepackage[margin=1in]{geometry}
\usepackage{hyperref}
\hypersetup{unicode=true,
            pdftitle={Internet of Things for Smart Industry},
            pdfauthor={Franz Maurer, Witek ten Hove \& Deny Smeets},
            pdfborder={0 0 0},
            breaklinks=true}
\urlstyle{same}  % don't use monospace font for urls
\usepackage{natbib}
\bibliographystyle{apalike}
\usepackage{longtable,booktabs}
\usepackage{graphicx,grffile}
\makeatletter
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi}
\def\maxheight{\ifdim\Gin@nat@height>\textheight\textheight\else\Gin@nat@height\fi}
\makeatother
% Scale images if necessary, so that they will not overflow the page
% margins by default, and it is still possible to overwrite the defaults
% using explicit options in \includegraphics[width, height, ...]{}
\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio}
\IfFileExists{parskip.sty}{%
\usepackage{parskip}
}{% else
\setlength{\parindent}{0pt}
\setlength{\parskip}{6pt plus 2pt minus 1pt}
}
\setlength{\emergencystretch}{3em}  % prevent overfull lines
\providecommand{\tightlist}{%
  \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
\setcounter{secnumdepth}{5}
% Redefines (sub)paragraphs to behave more like sections
\ifx\paragraph\undefined\else
\let\oldparagraph\paragraph
\renewcommand{\paragraph}[1]{\oldparagraph{#1}\mbox{}}
\fi
\ifx\subparagraph\undefined\else
\let\oldsubparagraph\subparagraph
\renewcommand{\subparagraph}[1]{\oldsubparagraph{#1}\mbox{}}
\fi

%%% Use protect on footnotes to avoid problems with footnotes in titles
\let\rmarkdownfootnote\footnote%
\def\footnote{\protect\rmarkdownfootnote}

%%% Change title format to be more compact
\usepackage{titling}

% Create subtitle command for use in maketitle
\newcommand{\subtitle}[1]{
  \posttitle{
    \begin{center}\large#1\end{center}
    }
}

\setlength{\droptitle}{-2em}
  \title{Internet of Things for Smart Industry}
  \pretitle{\vspace{\droptitle}\centering\huge}
  \posttitle{\par}
  \author{Franz Maurer, Witek ten Hove \& Deny Smeets}
  \preauthor{\centering\large\emph}
  \postauthor{\par}
  \predate{\centering\large\emph}
  \postdate{\par}
  \date{2017-06-06}

\usepackage{booktabs}
\usepackage{amsthm}
\makeatletter
\def\thm@space@setup{%
  \thm@preskip=8pt plus 2pt minus 4pt
  \thm@postskip=\thm@preskip
}
\makeatother

\usepackage{amsthm}
\newtheorem{theorem}{Theorem}[chapter]
\newtheorem{lemma}{Lemma}[chapter]
\theoremstyle{definition}
\newtheorem{definition}{Definition}[chapter]
\newtheorem{corollary}{Corollary}[chapter]
\newtheorem{proposition}{Proposition}[chapter]
\theoremstyle{definition}
\newtheorem{example}{Example}[chapter]
\theoremstyle{remark}
\newtheorem*{remark}{Remark}
\begin{document}
\maketitle

{
\setcounter{tocdepth}{1}
\tableofcontents
}
\chapter{Welcome}\label{welcome}

This is an accompanying book to the HAN Minor Smart Industry and covers
the major topics regarding the Internet of Things (IoT) implementation
in an industrial setting.

\chapter{Introduction to IoT}\label{intro}

The IoT is the product of physical objects, controllers, sensors and
actuators and the internet \citep{mcewen_designing_2013}. The first
reference to the IoT was in 1982, when researchers at Carnegie Mellon
University developed the world's first IoT-enabled Coke Machine. Mark
Weiser developed the concept further in the early 90s; and Kevin Ashton
coined the term `Internet of Things' around 1999.

\chapter{IoT Capabilities}\label{capabilities}

 Your browser does not support this format.

\chapter{IoT Framework}\label{framework}

We describe our methods in this chapter.

\chapter{IoT Markets}\label{markets}

Some \emph{significant} applications are demonstrated in this chapter.

\section{Example one}\label{example-one}

\section{Example two}\label{example-two}

\chapter{IoT Fundamentals}\label{fundamentals}

We have finished a nice book.

\chapter{Sensors}\label{sensors}

We have finished a nice book.

\hypertarget{communication}{\chapter{Data
Communication}\label{communication}}

We have finished a nice book.

\chapter{Cloud Storage}\label{cloud}

After sensors start to send data it is necessary that you define a place
where that data should be stored. In the context of IoT the Cloud is a
place somewhere on the internet where a provider allows recognized
sensors to store their raw data in a database. You as the owner has
access to that database, are able to program it and know how results
could be made visible on dashboards. So it is not necessary anymore to
maintain your own private servers in your own data centers, but cloud
platform companies are now taking over that role.

Raw data is in fact meaningless. You will have to analyze it, reshuffle,
run statistics on it, correlate it with other data, watch for
exceptional values and so on to make raw sensor data valuable for your
business goals. We will touch on data analytics, machine learning and
data science in \protect\hyperlink{analytics}{section 13}.

In this chapter we will look into data, their place in the IoT
infrastructure and explore one of the many cloud solutions.

\section{Database Systems}\label{database-systems}

As most IoT devices have very limited memory resources, the data they
produce has to be stored elsewhere. We discussed the data communication
possibilities in \protect\hyperlink{communication}{section 8}. In theory
the data could be gathered into a simple text file and applications
could read from this source.

However we soon would encounter some annoying practical problems. For
instance while data is written to a text file it is blocked. This would
mean other devices can not add their data resulting in data loss. Also a
text file is not the most efficient user of memory and its size would
grow exponentially when used in a professional application with large
numbers of devices and users. Other issues include lack of search and
filtering facilities and connecting to other data tables.

The above mentioned problems are not uniquely related to the IoT system.
It translates to any client server environment. Database systems have
been developed to cope with the challenges of efficiently creating large
quantities of data, read records, and update and delete them. These
basic database functionalities have been summarized in the CRUD acronym.

The most common language for doing CRUD operations on a database is SQL
(Structured Query Language). It has a rather human friendly syntax. For
example this is the instruction for retrieving a selection of data from
a data table (What do you think it will return?):

\begin{verbatim}
SELECT * FROM SensorData WHERE Weekday = 'Monday'
\end{verbatim}

\begin{table}

\caption{\label{tab:dbtable}An example database table: SensorData}
\centering
\begin{tabular}[t]{llr}
\toprule
DeviceID & Weekday & Temperature\\
\midrule
B4 & Monday & -8.5\\
A1 & Monday & -8.0\\
B4 & Monday & -8.5\\
B1 & Monday & -8.2\\
B1 & Monday & -8.8\\
\addlinespace
A3 & Monday & -8.8\\
B1 & Monday & -8.6\\
B3 & Monday & -8.6\\
B2 & Tuesday & -8.3\\
A3 & Tuesday & -9.0\\
B2 & Tuesday & -8.8\\
\bottomrule
\end{tabular}
\end{table}

A database consists of many tables. These tables can be related through
key variables. For instance one table can contain sensor data while
another table contains the meta data per device. These tables can be
combined via a shared variable (\emph{field}) containing the device IDs.
When the meta data includes location data (e.g.~longitude/latitude) you
could draw maps with the temperature measurements.

Databases that follow the above described structure belong to the
category of Relational Database Systems (RDBS). Popular (open source)
instances are \href{https://www.postgresql.org/}{PostgreSQL} and
\href{https://www.mysql.com/}{MySQL}. Another category of database
systems that is gaining attention are the NoSQL systems. An example is
\href{https://www.mongodb.com/}{MongoDB} (also open source). An
important difference between the two categories is that an RDBS can only
hold one value per cell in a table (like a spreadsheet), whereas a NoSQL
database can hold nested vectors of values in one cell (like
\href{http://www.json.org/}{JSON}).

\begin{verbatim}
## [
##   {
##     "DeviceID": "A1",
##     "Weekday": "Monday",
##     "Temperature": [-8]
##   },
##   {
##     "DeviceID": "A3",
##     "Weekday": "Monday",
##     "Temperature": [-8.8]
##   },
##   {
##     "DeviceID": "B1",
##     "Weekday": "Monday",
##     "Temperature": [-8.2, -8.8, -8.6]
##   },
##   {
##     "DeviceID": "B3",
##     "Weekday": "Monday",
##     "Temperature": [-8.6]
##   },
##   {
##     "DeviceID": "B4",
##     "Weekday": "Monday",
##     "Temperature": [-8.5, -8.5]
##   }
## ]
\end{verbatim}

\citep[Video:][]{google_developers_google_nodate}

Another interesting alternative database architecture is the graph
database. In a graph database data is represented as a network where the
records are stored in nodes and the relationships in the edges. This is
a very convenient solution when you are more interested in the
relationships between objects rather than doing aggregations on the
objects (sums, averages, etc).

\citep[Video:][]{neo4j_-_the_worlds_leading_graph_database_intro_nodate}

\section{Things in a network}\label{things-in-a-network}

\section{Amazon Web Services}\label{amazon-web-services}

\chapter{Privacy}\label{privacy}

We have finished a nice book.

\chapter{Security}\label{security}

We have finished a nice book.

\chapter{Encryption}\label{encryption}

We have finished a nice book.

\hypertarget{analytics}{\chapter{Data Analytics}\label{analytics}}

\begin{figure}[htbp]
\centering
\includegraphics{./images/datascience.png}
\caption{Fig.12.1 - Data Analytics versus Science}
\end{figure}

\citep{j_data_2013}

\chapter{Dashboards and Apps}\label{apps}

We have finished a nice book.

\chapter{Open Source Systems}\label{opensource}

We have finished a nice book.

\chapter{Arduino Programming}\label{arduino}

We have finished a nice book.

\bibliography{packages.bib,book.bib}

\end{document}

max_stars_repo_name: minorsmart/smarttech

max_issues_repo_name: minorsmart/smarttech

max_forks_repo_name: minorsmart/smarttech