\documentclass{article}
\usepackage{fullpage}
\usepackage{amsmath,amssymb,proof, multirow,multicol}
\usepackage{hyperref}
\hypersetup{pdfpagemode=Fullscreen,
  colorlinks=true,
  linkfileprefix={}}
  

%%%%%%%%%%%%%%%%%%%%%% IMPORTANT NOTE: %%%%%%%%%%%%%%%%%%%%
%%% you must copy-paste the following environments and macros into your tex file to be able to use 
% - \begin{proof} \end{proof}
% - \begin{pl} \end{pl}
% - \just
% - \floor{}
% - \ceil{}

\newcommand*{\proofindent}{\hspace*{1em}}

\newcommand*{\floor}[2][]{#1\lfloor{#2}#1\rfloor}
\newcommand*{\ceil}[2][]{#1\lceil{#2}#1\rceil}

% environment and macros for proof structures (end of ch.4)
\newenvironment*{proof}[1][]
   {\list{}{\parskip 0pt
            \parsep 0pt
            \partopsep 0pt}%
    \ifx\empty#1\empty\else\item[\bfseries#1]\fi
    \item\relax}
   {\endlist}
\newenvironment*{pl}
   {\list{}{\topsep 0pt
            \parskip 0pt
            \parsep 0pt
            \partopsep 0pt}%
    \item\relax}
   {\endlist}
\newcommand*{\just}{{\quad\#\ }}  % justification for a proof step

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\title{CSC165, Winter 2015\\
Latex Proof Structure Template}
\renewcommand{\today}{~}
  
\begin{document}
\maketitle
\textbf{Example on how to use the defined environments}
	
	\begin{proof}
	Assume ... \just{justification}
	%use pl environment for indentation
	\begin{pl}
		Assume ...\just{justification}
			\begin{pl}
			Some arguments ... \just{justification}  \\	
			Some arguments ... \just{justification}  
			\end{pl}
		Then ... \just{justification}
	\end{pl}
	Some arguments ... \just{justification}  \\	
	Some arguments ... \just{justification}  \\
	Then ...\just{justification}
	\end{proof}

\end{document}
