双重对齐导致不必要的间距

双重对齐导致不必要的间距

定义运算符的一种方法是写 double align,即

\begin{align*}
    f \colon A & \longrightarrow B, \\
    a & \longrightarrow f(a),
\end{align*}

首先,然后指定

\begin{align*}
    f(a) \colon C & \longrightarrow D, \\
    c & \longmapsto a \cdot c.
\end{align*}

我想要做的是合并这两个对齐方式,使f(a)箭头保持彼此对齐。

alignat我按照如下方式进行

\begin{alignat*}{2}
    f \colon A &\longrightarrow B & \\
    a & \longmapsto f(a)\colon C & \longrightarrow D \\
    & c & \longmapsto a\cdot c.
\end{alignat*}

输出

在此处输入图片描述

我尝试移动所有的&,但任何调整似乎都无法修复对齐或间距。

任何帮助,将不胜感激。

答案1

您需要了解 align(at) 环境要求每个对齐列有两个 & 符号,但第一个是。如果我理解得没错的话,以下代码可以完成您想要的操作:

\documentclass{article}
\usepackage{amsmath}

\begin{document}

    \begin{alignat*}{2}
        f \colon A &\longrightarrow B & \\
        a & \longmapsto f(a)&\colon C & \longrightarrow D \\
        & & c & \longmapsto a\cdot c.
    \end{alignat*}

\end{document} 

在此处输入图片描述

相关内容