106 lines
4.6 KiB
TeX
106 lines
4.6 KiB
TeX
\twocolumn[
|
|
\title{\bf \acronym - An algorithm for faster sock sorting}
|
|
\author{
|
|
CelloClemens$^{1,2}$,
|
|
Henriente$^{1}$,
|
|
}
|
|
\date{\today}
|
|
% List of institutions
|
|
\maketitle
|
|
$^{1}$Department for theoretical laundry science, Karlsruhe institute of suffering and sorrow (KISS), Karlsruhe, Germany \\
|
|
$^{2}$Institute of laundry sorting, Department for socks, Karlsruhe institute of suffering and sorrow (KISS), Karlsruhe, Germany
|
|
\begin{psummary}
|
|
Sorting socks can often be a time consuming task. This paper introduces the fastest method known in the scientific community to tackle
|
|
this challanging task. To be able to implement this new algorithm
|
|
a new data structure will be introduced and discussed. Abundant application of this novel algorithm may be able to
|
|
reduce the time required for sorting socks considerably.
|
|
\end{psummary}
|
|
\vspace{2mm}
|
|
]
|
|
\fancypagestyle{firstpage}{%
|
|
\lhead{Please help I am stuck in the basement sorting socks}
|
|
\rhead{Journal of Immaterial Science}
|
|
}
|
|
\thispagestyle{firstpage}
|
|
|
|
% The introduction
|
|
\section{Introduction}
|
|
While sorting algorithms are one of the most discussed algorithms in the
|
|
computer science community, application of this field to laundry is still quite new.
|
|
In fact no research is known to the authors connecting the fields of computer science
|
|
and laundry sorting. A few definitions are required in order to establish a baseline
|
|
for the algorithm discussed in the following paper.
|
|
|
|
\subsection{Definitions}
|
|
In this section a few definitions, common in the field of theoretical laundry science shall be
|
|
introduced. These are required to understand the algorithm and its advantages.
|
|
|
|
\subsubsection{Sock}
|
|
Let $\Lambda_a$ be the Set of laundry. The set of socks, $\Sigma\subset\Lambda_a$
|
|
is defined as $\Sigma:=\{s\in\Lambda_a|\chi(s)=1\}$\footnote{Yes, some socks have holes. So what?!}, where $\chi(s)$ is the Euler
|
|
characteristic of $s$. For every sock $s$ there is an equal counterpart $s^{-1}$ giving rise
|
|
to the identity $s\cong s^{-1}$. The task commonly known as "sock sorting" is in fact the
|
|
search for this isomorphism $\eta$ and matching every sock $s$ to its inverse
|
|
$s^{-1}$.
|
|
\begin{figure}[h]
|
|
\centering
|
|
\includegraphics[width=\columnwidth]{\projectpath figs/Sock.jpeg}
|
|
\vspace{0.1in}
|
|
\caption{Three single socks.}
|
|
\label{fig:Sock}
|
|
\vspace{0.1in}
|
|
\end{figure}
|
|
\subsubsection{Laundry basket}
|
|
Let $\Lambda\subseteq\Lambda_a$ be a set of laundry items. Then a laundry basket is a
|
|
triple $(\Lambda, +, -)$ representing a data structure that implements
|
|
the following functions:
|
|
\begin{itemize}
|
|
\item \texttt{get: }$\mathscr{L}\in\Lambda_a$, returns a uniformly random
|
|
laundry item from the basket or $\mathscr{L}_0$, the Zero element of laundry, iff
|
|
There are no items left.
|
|
\item \texttt{put($\mathscr{L}\in\Lambda_a$)}, deposits the given laundry item
|
|
into the basket.
|
|
\end{itemize}
|
|
Note that both operations run in $\mathcal{O}(1)$. Because of the nature of
|
|
a laundry basket finding a unique item requires transferring the content of
|
|
the whole basket to a new basket thus requiring $\mathcal{O}(n)$ operations,
|
|
$n$ being the number of items currently inside the basket.
|
|
\subsection{Ongoing and latest research}
|
|
To fully appreciate the gravity of \acronym it has to first be discussed
|
|
how most resent research tackles the problem of sock sorting.
|
|
The following code describes the most recently developed sock sorting
|
|
algorithm from the paper by \citeauthor{My colleague et al.} Which is the current
|
|
industry standard. Notice whe code has a runtime complexity of $\mathcal{O}(n^2)$.
|
|
|
|
\begin{algorithm}
|
|
\caption{Conventional sock sorting}\label{euclid}
|
|
\begin{algorithmic}[1]
|
|
\State\Comment initialize a new laundry basket with a given set of laundry
|
|
\State $A\gets\Lambda$\Comment WLOG assume $\forall\mathscr{L}\in\Lambda|\mathscr{L}$ is a sock
|
|
\State $\text{matches}\gets []$
|
|
\Repeat
|
|
\State $\mathscr{L}\gets$ A.get
|
|
|
|
\Repeat\Comment find the inverse Sock by checking all other socks
|
|
\State $\mathscr{L}^\prime\gets$ A.get
|
|
\Until{$\mathscr{L}^\prime =\mathscr{L}^{-1}$}
|
|
\State matches.append(($\mathscr{L}, \mathscr{L}^\prime$))
|
|
\Until{$\mathscr{L}\ne\mathscr{L}_0$}
|
|
\end{algorithmic}
|
|
\end{algorithm}
|
|
\section{Methodology}
|
|
|
|
\section{Discussion and Results}
|
|
|
|
|
|
\section{Conclusion}
|
|
|
|
\section{Acknowledgements}
|
|
|
|
I did this all by myself, so I'm kinda awesome. But I guess I hocked and edited this template from the cowshed article so thanks for that William Roper
|
|
|
|
\begingroup
|
|
\setlength\bibitemsep{0pt}
|
|
\setlength\bibnamesep{0pt}
|
|
\printbibliography[heading=subbibliography]
|
|
\endgroup
|