関数定義におけるアライメント

関数定義におけるアライメント

関数の定義には次のコードがあります

\begin{align*}
\varphi_{\sigma}\colon  &E \longrightarrow E \\
&(x_{1},x_{2},...,x_{n}) \longmapsto        
(x_{\sigma(1)},x_{\sigma(2)},...,x_{\sigma(n)}).
\end{align*}

これはかなり見苦しいので、矢印も揃えたいのですが、align環境内ではうまくできませんでした。環境内ではできますarrayが、数式と本文のテキスト間のスペースが変わるため、これもうまくレンダリングされません。

答え1

\medmath私は @Gonzalo Medina と同じ初期解決策を持っていましたが、パッケージのコマンドを使用してnccmath、$n$ タプルのサイズを約 30 % 削減する解決策を追加しました。

\documentclass{article}
\usepackage[overload]{empheq}
\usepackage{nccmath}

\begin{document}

\begin{align*}
  φ_{σ}\colon E & ―――→ E \\
  (x_{1},x_{2},...,x_{n}) & \longmapsto
  (x_{σ(1)},x_{σ(2)},...,x_{σ(n)}).
\end{align*}
\vskip 1cm

\verb+With \medmath+:
\begin{align*}
  φ_{σ}\colon E & ―――→ E \\[-0.5ex]
  \medmath{(x_{1},x_{2},...,x_{n})} & \longmapsto
  \medmath{(x_{σ(1)},x_{σ(2)},...,x_{σ(n)}).}
\end{align*}

\end{document} 

ここに画像の説明を入力してください

答え2

矢印で揃えることもできますが、n タプルが広すぎるため奇妙に見える可能性があります。別の方法としては、揃えることをあきらめて、少し長くなり、コンポーネントを分離することです。

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{align*}
\varphi_{\sigma}\colon  E &\longrightarrow E \\
(x_{1},x_{2},...,x_{n}) &\longmapsto        
(x_{\sigma(1)},x_{\sigma(2)},...,x_{\sigma(n)}).
\end{align*}

We have the mapping $\varphi_{\sigma}\colon  E \longrightarrow E$
such that 
\[
(x_{1},x_{2},...,x_{n}) \longmapsto        
(x_{\sigma(1)},x_{\sigma(2)},...,x_{\sigma(n)}).
\]
\end{document}

ここに画像の説明を入力してください

関連情報