\documentclass[12pt]{article}
% These are the packages I use - pick and choose!
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{graphicx, color}
\usepackage{theorem}
\numberwithin{equation}{section}

% These are the headings: change the object in the square brackets
% if you want to number things differently.  For example,
% the first command says that theorems should be numbered according
% to section, and that lemmas should be numbered 
\newtheorem{thm}{Theorem}[section]
\newtheorem{lemma}[thm]{Lemma}
\newtheorem{prop}[thm]{Proposition}
\newtheorem{cor}[thm]{Corollary}
\newtheorem{defn}[thm]{Definition}
\newtheorem{examp}[thm]{Example}
\newtheorem{conj}[thm]{Conjecture}
\newtheorem{rmk}[thm]{Remark}

\newcommand{\qed}{\hfill \mbox{\raggedright \rule{.07in}{.1in}}}

\newenvironment{proof}{\vspace{1ex}\noindent{\bf
Proof}\hspace{0.5em}}{\hfill\qed\vspace{1ex}}
\newenvironment{pfof}[1]{\vspace{1ex}\noindent{\bf Proof of
#1}\hspace{0.5em}}{\hfill\qed\vspace{1ex}}

% Title, authors and addresses

% use the thanksref command within \title, \author or \address for footnotes;
% use the corauthref command within \author for corresponding author footnotes;
% use the ead command for the email address,
% and the form \ead[url] for the home page:
% \title{Title\thanksref{label1}}
% \thanks[label1]{}
% \author{Name\corauthref{cor1}\thanksref{label2}}
% \ead{email address}
% \ead[url]{home page}
% \thanks[label2]{}
% \corauth[cor1]{}
% \address{Address\thanksref{label3}}
% \thanks[label3]{}

% use optional labels to link authors explicitly to addresses:
% \author[label1,label2]{}
% \address[label1]{}
% \address[label2]{}

\title{A Stunning Theorem}
\author{A. Fabulous Student \\ Pomona College, Where else?}
% The following command is useful if you make revisions, which you should!
\date{\today}

\begin{document}

\maketitle

\begin{abstract}
In this paper we don't really do much.  However,
there are a lot of {\it real} theorems that still
need to be proved.
\end{abstract}

\thanks{I couldn't have done this without my dog.}

\begin{section}{Section 1} \label{Intro}
\begin{thm}{A Big Fat Theorem} \label{thm:BigFat}
\begin{equation} \label{eqn:Stupid}
x = 1, y = 1 \Rightarrow x + y = 2 
\end{equation}
\begin{lemma}{A Small but Important Lemma} \label{lemma:LittleLem}
If $x = a$, and $y = b$, then $x + y = a + b$.
\end{lemma}
\end{thm}
We can see that Lemma \ref{lemma:LittleLem} implies 
Theorem \ref{thm:BigFat} by letting $a = 1$ and $b = 1$
in Equation \ref{eqn:Stupid}
\end{section}

\begin{section}{Conclusion}
As we saw in Section \ref{Intro}, everything can be
made to be complicated. (See, for example, 
Figure \ref{fig1}.) This is usually not a good
idea unless you want to lose your audience.

\begin{figure} \label{fig1}
\centering{
%\includegraphics[height=5cm, width=6cm]{templatefig1.eps}
}
\caption{Graphics can really snaz it up!}
\end{figure}

Most importantly, \textcolor{red}{\bf NEVER DIVIDE BY
ZERO} unless, of course, you are wearing your protective
divide-by-zero suit (See \cite{Billingsley86} for the terrible
consequences which might result).
\end{section}

\begin{thebibliography}{99}

\bibitem{Billingsley86} P. Billingsley. {\em Probability and Measure.} 
Wiley, New York, 1986.
 
\bibitem{Dolgopyat} D. Dolgopyat. On mixing properties of compact
group extensions of hyperbolic systems. Preprint.

\end{thebibliography}

\end{document}