
\documentstyle[12pt]{article}
\input mssymb                                 
\input /jj/kt/tex/fixqmsfonts
\input /jj/kt/tex/laktex
\input /jj/kt/tex/illustrations
\input /var/arvind/idcompiler/macros/prelude


\pagestyle{empty}

\begin{document}


{\large
\begin{figure}[htbp]
\begin{tabular}{|l|} \hline
\\
$\begin{array}{lll}
U\!D\!F & \in & \mbox{User Defined Function}\\
G\!V & \in  & \mbox{Ground Value}\\
\end{array}$ \\
\\
$\begin{array}{llll}
Integer & ::= & {\sf {\sf 1}} \mid {\sf {\sf 2}} \mid \cdots \mid 
                                        {\sf \underline{n}} \mid \cdots & \\
Boolean & :: = & {\sf True} \mid {\sf False} & \\
                            
Variable & ::= & x \mid y \mid z \mid \cdots \mid a \mid b \mid \cdots \mid 
f \mid \cdots \mid 
x_1 \mid x_2 \mid \cdots  & \\
M\!V_m & ::= & \underbrace{Variable, \cdots , Variable } \\
Label &::=& L \mid L1 \mid \cdots \mid L' \mid \cdots \\
P\!F1 & ::= & {\sf Negate} \mid {\sf Not} \mid {\sf Allocate} \\
P\!F2 & ::= & {\sf +} \mid {\sf -} \mid {\sf *}
\mid \cdots \mid {\sf Less} \mid {\sf Equal?} \mid {\sf P\_select} & \\
P\!F3 & ::= & {\sf Ack\_store} \\


U\!D\!F & ::=& F \mid G \mid \cdots &   \\

S\!E & ::= & Variable \mid U\!D\!F  \mid G\!V &  \\
S\!E_m & ::= & \underbrace{S\!E, \cdots, S\!E}_m & \\
G\!V & ::= & Integer \mid Boolean \mid {\sf ()} \mid Label \mid {\sf Error} \mid \top &\\


E_1 & ::=& S\!E \mid P\!F1 \; (S\!E) \mid P\!F2 \;(S\!E_2) 
\mid P\!F3 \; (S\!E_3) \mid
{\sf Ap_n} \; (S\!E_{n+1})  \\
& & \mid {\sf Dispatch_n} \; (S\!E , \underbrace{E , \cdots, E}_n) \mid 
{\sf WLoop_1} \; (S\!E_4) \mid {\sf FLoop_1} \; (S\!E_5) \mid Block \\
E_m & ::= & S\!E_m \mid  {\sf Ap_{n,m}} \; (S\!E_{n+1}) \mid
{\sf Dispatch_{n,m}} \; (S\!E , \underbrace{E_m , \cdots, E_m}_n) \\
& & \mid {\sf WLoop_m} \; (S\!E_{m+3}) \mid 
{\sf FLoop_m} \; (S\!E_{m+4}) \mid Block_m \\
Block_m & ::= & \{_{\sf m} \; [Statement;]^* \;\; {\sf In} \;S\!E_m \} &  \\
Statement &::= & Binding \mid Command \mid  {\sf Store\_Error} & \\
Command & ::= & {\sf P\_store} \; (S\!E_3) \mid \top_s \\
Binding &::= & M\!V_m = E_m & \\
\end{array} $\\
\\ \hline
\end{tabular}
\\
\begin{center}
P-TAC
\end{center}
\end{figure}
}

\end{document}
