\usepackage{fullpage}
\usepackage[cmex10]{amsmath}
\usepackage{amssymb}
\usepackage{amsthm,latexsym,amsfonts,xspace}
\usepackage{courier}

% number,date,title,lecturer,scribe
\newcommand{\lab}[3]{
\noindent
\fbox{
\begin{minipage}{16cm}
  {\bf CS41: Algorithms} \hfill #2
  \begin{center}
    {\Large Lab #1} \\[3mm]
  \end{center}
Lecturer: #3 \hfill
\end{minipage}
}
\bigskip

\bigskip
}
\newcommand{\homework}[3]{
\noindent
\fbox{
\begin{minipage}{16cm}
  {\bf CS41: Algorithms} \hfill #2
  \begin{center}
    {\Large Homework #1} \\[3mm]
  \end{center}
Lecturer: #3 \hfill
\end{minipage}
}
\bigskip

\bigskip
}

% Command to handle font change for instructions to students
\newcommand{\note}[1]{$\langle$\emph{#1}$\rangle$}

%% Theorems, Corollaries and so on...
\theoremstyle{plain}
\newtheorem{theorem}{Theorem}
\newtheorem{proposition}[theorem]{Proposition}
\newtheorem{corollary}[theorem]{Corollary}
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{hypothesis}[theorem]{Hypothesis}

\theoremstyle{definition}
\newtheorem{definition}[theorem]{Definition}
\newtheorem{conjecture}[theorem]{Conjecture}
\newtheorem{exercise}[theorem]{Exercise}
\newtheorem{example}[theorem]{Example}
\newtheorem{problem}[theorem]{Open problem}

\theoremstyle{remark}
\newtheorem{fact}[theorem]{Fact}
\newtheorem{claim}{Claim}
\newtheorem{observation}[theorem]{Observation}

%%% Miscelanneous Commands
\newcommand{\deq}{:=}
