Como construir o seguinte diagrama em LaTeX?

Como construir o seguinte diagrama em LaTeX?

Eu gostaria de construir o seguinte diagrama em LaTeX. Qual é a melhor maneira de fazer isso? Eu gostaria de evitar o uso de software externo. (Atualmente tenho uma sequência "linear", \cdots\to H_p(L)\to H_p(K)\to\cdotsmas gostaria de refazê-la para se parecer com a da imagem.)

O diagrama que gostaria de construir.

Responder1

A parte mais difícil é provavelmente como ajustá-lo à largura do texto:

\documentclass{article}
\usepackage{tikz-cd}

\begin{document}

\[
\begin{tikzcd}[column sep=small]
\cdots \arrow[r,"\varepsilon_*"] &
  H_{p+2}(K,L) \arrow[d,"\partial_*"] \\
& H_{p+1}(L) \arrow[r,"i_*"] &
  H_{p+1}(K) \arrow[r,"\varepsilon_*"] &
  H_{p+1}(K,L) \arrow[d,"\partial_*"] \\
&&& H_{p}(L) \arrow[r,"i_*"] &
    H_{p}(K) \arrow[r,"\varepsilon_*"] &
    H_{p}(K,L) \arrow[d,"\partial_*"] \\
&&&&& H_{p-1}(L) \arrow[r,"i_*"] & \cdots
\end{tikzcd}
\]

\end{document}

insira a descrição da imagem aqui

Com este código

\documentclass{article}
\usepackage{tikz-cd}

\begin{document}

\[
\begin{tikzcd}[column sep=.5em]
\cdots \arrow[r,"\varepsilon_*"] &[.5em]
  H_{p+2}(K,L) \arrow[d,"\partial_*"] \\
& H_{p+1}(L) \arrow[r,"i_*"] &
  H_{p+1}(K) \arrow[r,"\varepsilon_*"] &[.5em]
  H_{p+1}(K,L) \arrow[d,"\partial_*"] \\
&&& H_{p}(L) \arrow[r,"i_*"] &
    H_{p}(K) \arrow[r,"\varepsilon_*"] &[.5em]
    H_{p}(K,L) \arrow[d,"\partial_*"] \\
&&&&& H_{p-1}(L) \arrow[r,"i_*"] &[.5em] \cdots
\end{tikzcd}
\]

\end{document}

e a largura do texto padrão, articleobtemos uma caixa cheia de menos de 1 ponto e a saída parece bastante aceitável.

insira a descrição da imagem aqui

Responder2

Com base na resposta do egreg, quero mostrar que este diagrama pode ser configurado com macros puramente definidas pelo TeX simples.

\def\rar#1{\mathop{\longrightarrow}\limits^{#1}}
\def\dar#1{\bigg\downarrow\rlap{$\scriptstyle#1$}}

$$
  \ialign{\hfil$#$\hfil&&\hskip.1em\hfil$#$\hfil\crcr
    \cdots & \rar{\varepsilon_*} & H_{p+2}(K,L) \cr
    && \dar{\partial_*} \cr
    && H_{p+1}(L) & \rar{i_*} & H_{p+1}(K) & \rar{\varepsilon_*} & H_{p+1}(K,L) \cr
    &&&&&& \dar{\partial_*} \cr
    &&&&&& H_{p}(L) & \rar{i_*} & H_{p}(K) & \rar{\varepsilon_*} & H_{p}(K,L) \cr
    &&&&&&&&&& \dar{\partial_*} \cr
    &&&&&&&&&& H_{p-1}(L) & \rar{i_*} & \cdots \cr
  }
$$

\bye

insira a descrição da imagem aqui

informação relacionada