\documentclass[11pt]{article}

\usepackage{verbatim}
\usepackage{hyperref}
\usepackage{graphicx, color}
\usepackage{moreverb}
\usepackage{fancyvrb}
\usepackage{mathrsfs}
\usepackage{listings}
\usepackage{amsmath,proof,amsthm,amssymb,enumerate}
\usepackage{math-cmds}

\lstset{
   language=Java,
   basicstyle=\footnotesize\ttfamily,
   keywordstyle=\bf,
}

\textwidth 16.0cm \textheight 23.5cm
\oddsidemargin 0.1in
\evensidemargin 0.1in
\topmargin -0.5in
\parskip 1ex
\columnsep 0.35in
\sloppy

\newcommand{\hfile}[1]{{\it HOMEDIR}{\tt /#1}}
\newcommand{\afile}[1]{{\it ASSTDIR}{\tt /#1}}
\newcommand{\TODO}[1]{\textbf{TODO: #1}}

\newcommand{\question}[2]
  {\bigskip \noindent
  {\bf Question \arabic{qnum}}, {#1}, {\it(#2 points).}
  \addtocounter{qnum}{1}
  }

\newcounter{qnum}
\setcounter{qnum}{1}

\newlength{\figratio}
\setlength{\figratio}{1.0in}

\newcommand{\centerfig}[2]{
   \centerline{\resizebox{#2in}{!}{\psfig{file=#1.eps}}}}

\begin{document}

\[
\infer[\textit{E-Field}]
{\textrm{(new Pair(new Pair(new A(), new B())), new A()).fst.snd} \rightarrow \textrm{new Pair(new A(), new B()).snd}}
{\infer[\textit{E-ProjNew}]
    {\textrm{(new Pair(new Pair(new A(), new B())), new A()).fst} \rightarrow \textrm{new Pair(new A(), new B())}}
    {\infer[\textit{field-lookup}]
        {\textit{fields}(\textrm{Pair}) =~ $\textbullet$, \textrm{Object fst, Object snd}}
        {CT(\textrm{Pair})= \textrm{class Pair extends Object \{ Object fst; Object snd; K M..\}}
        & \infer[\textit{field-object}]
            {\textit{fields}(\textrm{Object}) =~ $\textbullet$}
            {}
        }
    }
}
\]

\end{document}
