% Generic lecture notes style
% Author: Frank Pfenning <fp@cs.cmu.edu>

\usepackage{microtype}
\usepackage{palatino}
\usepackage{amssymb}
\usepackage{mathpartir}
\usepackage{proof}
\setlength{\inferLineSkip}{4pt}
\usepackage{fancyhdr}
\usepackage{enumerate}
\usepackage{comment}
\usepackage{aliascnt}
\usepackage[breaklinks=true,
  colorlinks=true,
  citecolor=blue,
  linkcolor=blue,
  urlcolor=blue]{hyperref}
\usepackage{graphicx}
\usepackage{stmaryrd}
\usepackage{tikz}

\usepackage{listings}

\lstdefinestyle{verb}{
  basicstyle=\ttfamily\small,
  commentstyle=\itshape,
  keywordstyle=\bfseries, 
% identifierstyle=
  numbers=left,
  numberstyle=\tiny,
  captionpos=b,
}  

% \lstdefinelanguage{lambda}{
%   keywords={defn,norm,conv,type,decl,eval,fail,fold,case,of},
%   otherkeywords={unfold},
%   % otherkeywords={!,=,\\,.,/\\,$,:,|,->,\,,=>,*,+},
%   alsoletter={'},
%   sensitive=true,
%   comment=[l]\%,
%   morecomment=[n]{(*}{*)},
%   morecomment=[l]\#,  % for compiler directives
% }

% \begin{lstlisting}[language=lambda,style=verb,
%   caption={<caption text>},label=lst:<name>]
%   ... lambda code ...
% \end{lstlisting}

% % begin palatino.sty
% % copied from palatino.sty, except left ttdefault to CMTT
% \renewcommand{\rmdefault}{ppl}
% \renewcommand{\sfdefault}{phv}
% % \renewcommand{\ttdefault}{pcr}
% % end palatino.sty

% for twoside option
\addtolength{\oddsidemargin}{30pt}
\addtolength{\evensidemargin}{-22pt}

\renewcommand{\sectionautorefname}{Section}

\newtheorem{theorem}{Theorem}

\newaliascnt{conjecture}{theorem}
\newtheorem{conjecture}[conjecture]{Conjecture}
\aliascntresetthe{conjecture}
\providecommand*{\conjectureautorefname}{Conjecture}
% \newtheorem{conjecture}[theorem]{Conjecture}

\newaliascnt{lemma}{theorem}
\newtheorem{lemma}[lemma]{Lemma}
\aliascntresetthe{lemma}
\providecommand*{\lemmaautorefname}{Lemma}
% \newtheorem{lemma}[theorem]{Lemma}

\newaliascnt{corollary}{theorem}
\newtheorem{corollary}[corollary]{Corollary}
\aliascntresetthe{corollary}
\providecommand*{\corollaryautorefname}{Corollary}
% \newtheorem{corollary}[theorem]{Corollary}

\newtheorem{exercise}{Exercise}
\providecommand*{\exerciseautorefname}{Exercise}

\newenvironment{proof}{\trivlist \item[\hskip \labelsep{\bf 
Proof:}]}{\hfill$\Box$ \endtrivlist}
\newenvironment{sketch}{\trivlist \item[\hskip \labelsep{\bf 
Proof sketch:}]}{\hfill$\Box$ \endtrivlist}
\newenvironment{attempt}{\trivlist \item[\hskip \labelsep{\bf 
Proof attempt:}]}{\hfill$\Diamond$ \endtrivlist}

\newcommand{\highlight}[1]{\par\noindent%\vspace{1ex}%
\framebox{\addtolength{\linewidth}{-1em}\begin{minipage}{\linewidth}#1\end{minipage}}}

% \newcommand{\highlight}[1]{\par%\vspace{1ex}%
% \framebox{\addtolength{\linewidth}{-1em}\begin{minipage}{\linewidth}#1\end{minipage}}}
% %\vspace{1ex}

\title{Lecture Notes on \\ \lectitle}
\author{\course \\ \lecturer}
\date{Lecture \lecnum\\ \lecdate}

\setlength{\headheight}{15pt}
\pagestyle{fancyplain}

\lhead[\fancyplain{}{\bfseries L\lecnum.\thepage}]%
      {\fancyplain{}{\bfseries\lectitle}}
\chead[]{}
\rhead[\fancyplain{}{\bfseries\lectitle}]%
      {\fancyplain{}{\bfseries L\lecnum.\thepage}}
\lfoot[{\small\scshape Lecture Notes}]{{\small\scshape Lecture Notes}}
\cfoot[]{}
\rfoot[{\small\scshape\lecdate}]{{\small\scshape\lecdate}}
