% General useful macros
\newcommand{\sembrac}[1]{[\![ #1 ]\!]}
\newcommand{\infer}[3]
           {\vspace{.2cm}
            \hbox{${\displaystyle {\frac {#1}{#2}}\hspace{.5cm}{#3}}$}
            \vspace{.2cm}}

\newcommand{\res}[1]{\backslash #1}

% Abbreviations
\newcommand{\F}{Facile}
\newcommand{\CCS}{Calculus of Communicating Systems}
\newcommand{\CHOCS}{A Calculus of Higher Order Communicating Systems}
\newcommand{\CSP}{Communicating Sequential Processes}
\newcommand{\CHAM}{Chemical Abstract Machine}
\newcommand{\lc}{$\lambda$--calculus}
\newcommand{\LC}{$\lambda$--Calculus}
\newcommand{\lx}{$\lambda$--expression}
\newcommand{\Pc}{$\pi$--calculus}
\newcommand{\PC}{$\pi$--Calculus}
\newcommand{\PPc}{polyadic $\pi$--calculus}
\newcommand{\PPC}{Polyadic $\pi$--Calculus}
\newcommand{\TPC}{Term--$\pi$--Calculus}
\newcommand{\TPc}{term--$\pi$--calculus}
\newcommand{\PSC}{$\pi^\pi$--Calculus}
\newcommand{\PSc}{$\pi^\pi$--calculus}
\newcommand{\TPSC}{Term--$\pi^\pi$--Calculus}
\newcommand{\TPSc}{term--$\pi^\pi$--calculus}
\newcommand{\Gc}{$\gamma$--calculus}
\newcommand{\GC}{$\Gamma$--Calculus}
\newcommand{\Nc}{$\nu$--calculus}
\newcommand{\NC}{$\nu$--Calculus}
\newcommand{\XIc}{$\xi$--calculus}
\newcommand{\XIC}{$\xi$--Calculus}

% Source representation
\newcommand{\Labs}[2]{\lambda{#1}.\,{#2}}
\newcommand{\Lapp}[2]{{#1}\,{#2}}
\newcommand{\Ltriv}{()}
\newcommand{\Lpair}[2]{({#1},{#2})}

% Translation representation
\newcommand{\transwhere}[3]{& & {\makebox[1.5cm][l]{where}}
{#1}\;?\;{#2}\;\cdot\;(\,{#3}\,)}
\newcommand{\transand}[3]{& & {\makebox[1.5cm][l]{and}}
{#1}\;?\;{#2}\;\cdot\;(\,{#3}\,)}
\newcommand{\transexp}[2]{\sembrac{#1}_{#2}}
\newcommand{\transdef}[3]{\transexp{#1}{#2} & = & {#3}}

% Jeong-Ho's macro
\newcommand{\prefix}{\sum_{i\in I}\mu_{i}.}
\newcommand{\sumofp}{\sum_{i\in I}P_{i}}
\newcommand{\productofp}{\prod_{i\in I}P_{i}}
\newcommand{\binsum}[2]{{#1}\,+\,{#2}}
\newcommand{\intsum}[2]{{#1}\,\oplus\,{#2}}
\newcommand{\extsum}[2]{{#1}\,\frame{+}\,{#2}}
\newcommand{\comsum}[2]{{#1}\,[\!]\,{#2}}
\newcommand{\compo}[2]{{#1}\,|\,{#2}}
\newcommand{\restrict}[2]{({\nu}\,{#1})\,{#2}}
\newcommand{\rep}[1]{*{#1}}
\newcommand{\paradef}[3]{{#1}\,({\vec{#2}})\,\stackrel{\rm def}{=}\,{#3}}
\newcommand{\substi}[3]{{#1}\,\{{#2}/{#3}\}}
\newcommand{\simulsubsti}[3]{{#1}\,\{{\vec{#2}}/{\vec{#3}}\}}
\newcommand{\match}[3]{[{#1}\,=\,{#2}]\,{#3}}
\newcommand{\inact}{{\bf 0}}
\newcommand{\ident}[2]{{#1}\,({#2}_{1}, \ldots, {#2}_{n})}
\newcommand{\inputact}[2]{{#1}?{#2}}
\newcommand{\outputact}[2]{{#1}!{#2}}
\newcommand{\intransition}[2]{{#1}\;\rightarrow\;{#2}}
\newcommand{\labeltransition}[3]{{#1}\;\stackrel{#2}{\rightarrow}\;{#3}}
\newcommand{\membrane}[1]{\{\!|\,{#1}\,|\!\}}
