I am processing a text, which is the specification for my mathematical package. The typical style for the specification looks as follows:

I can align expressions only in a single environment, using align or array and so. But I want, that all examples from presented image, will be aligned with respect to \to symbol through all document. Is there any way to do so?
The code of the presented image (sorry that it rather complicated):
\documentclass[a4paper,titlepage,11pt,oneside]{book}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{latexsym}
\usepackage{array}
\usepackage{xargs}
\usepackage{xparse}
\usepackage{xcolor}
\usepackage{empheq}
\usepackage{courier}
\newcommand{\mkey}[1]{{\mbox{\small\ttfamily #1}}}
\newcommand{\mobj}[2]{\mbox{\ttfamily\small #1}\left [\,#2\,\right]}
\definecolor{boxcolor}{rgb}{.95, .95, 1}
\newsavebox{\mysaveboxM} % M for math
\newcommand*\MetaBox[2][Example]{%
\sbox{\mysaveboxM}{#2}%
\sbox{\mysaveboxM}{%
\parbox[b][\ht\mysaveboxM][b]{%
\wd\mysaveboxM}{#2}%
}%
\sbox{\mysaveboxM}{%
\fcolorbox{black}{boxcolor}{%
\makebox[\linewidth-4em]{\usebox{\mysaveboxM}}%
}%
}%
\usebox{\mysaveboxM}%
}
\NewDocumentEnvironment{meta}{O{equation*}O{}}{%
\setkeys{EmphEqEnv}{#1}%
\setkeys{EmphEqOpt}{box=\MetaBox,#2}%
\EmphEqMainEnv}%
{\endEmphEqMainEnv}
\begin{document}
\subsection{Product}
....
\subsubsection{Indices}
\begin{meta}
\begin{array}{rcl}
\mobj{}{H^{kj}M_jQ_k{}^{\mu}{}_{qa}}\mkey{.indices}&\to&
\mobj{UnorderedIndices}{{}^{kj}{}_{jk}{}^{\mu}{}_{qa}}
\end{array}
\end{meta}
The interesting point introduced here is a special type of product
indices. We will discuss it in section. The general idea here is that
from the mathematical point of view the order of resulting product indices
is undefined.
\subsubsection{List access operations}
\begin{meta}
\begin{array}{rcl}
\mobj{}{V_{\alpha\beta}M_\sigma
Ric^{\kappa\delta}\,\delta^\alpha{}_{\kappa}}\mkey{.size()}&\to&4\\[12pt]
\mobj{}{H^{kj}M_jQ_k{}^{\mu}{}_{qa}}\mkey{.elements}&\to&
\mobj{List}{H^{kj},\,M_j,\,Q_k{}^{\mu}{}_{qa}}
\end{array}
\end{meta}
One of the important (and really hard) decisions we've made is to
consider only commutative theories. So, while processing products, the order
of elements is not taken into account! However, there are some tricks to
work with non-commutative theories.\newline Indeed, you can take an element
by index:
\begin{meta}
\begin{array}{rcl}
\mobj{}{H^{kj}M_jQ_k{}^{\mu}{}_{qa}}\mkey{.get(2)}&\to&
\mobj{SimpleTensor}{Q_k{}^\mu{}_{qa}}
\end{array}
\end{meta}
\end{document}


arrayenvironment. Wouldn't atabularbe better? – Feb 29 '12 at 09:08