how i can write using latex to find this: enter image description here

but with long arrows

Thank you.

  • 3
    Have a look at either the xy package or the tikz-cd package – daleif Sep 7 '14 at 17:35

It's quite easy with tikz-cd.

  1. The first bit is the arrow direction: d for “down”, r for “right” and so on.

  2. The label on an arrow is by default on the left side (in the arrow direction); with swap we place it on the other side

  3. Similarly, shift left refers to a movement towards the left side of the arrow (in the arrow direction); shift right does the same in the other side.

  4. The default value of row sep is 1.8em, while column sep is 2.4em; play with them until you're satisfied.

  5. The ^{\vphantom{\prime}} is used in order to have the two iotas at the same level.

Here's the code.


\begin{tikzcd}[row sep=3em,column sep=4.5em]
C_{p-1}(X) \arrow[dr,"K_{p-1}"] &
  C_{p}(X) \arrow[l,swap,"\partial"]
  \arrow[d,shift right=.3em,swap,"\iota^{\vphantom{\prime}}_{p}"]
  \arrow[d,shift left=.3em,"\iota'_{p}"]
& C_{p}(X\times[0,1]) &
  C_{p+1}(X\times[0,1]) \arrow[l,swap,"\partial"]

enter image description here

Alternatively, you can use the older Xy-pic package.


  C_{p-1}(X) \ar[dr]^{K_{p-1}} &
    C_{p}(X) \ar[l]_{\partial}
  & C_{p}(X\times[0,1]) &
    C_{p+1}(X\times[0,1]) \ar[l]_{\partial}

The syntax is a bit different, but the ideas are the same.

enter image description here

  • It makes me an error with this usepckage – Vrouvrou Sep 7 '14 at 19:52
  • @Vrouvrou What TeX distribution are you using? – egreg Sep 7 '14 at 19:54
  • Im using texmaker – Vrouvrou Sep 7 '14 at 20:02
  • @Vrouvrou Texmaker is just the editor; what's the first line in the .log file you get after compiling? You can try the Xy-pic version, but I'd recommend using tikz-cd if possible. – egreg Sep 7 '14 at 20:04
  • l/texlive/2011/texmf-dist/fonts/type1/public/amsfonts/cm/cmr6.pfb></usr/local/t – Vrouvrou Sep 7 '14 at 20:05

You also can easily do such an homotopy diagram with the psmatrix environment (from the pst-node package. The syntax is different from tikz-cd: you first describe the matrix of nodes, then the connections between these nodes. The nodes can have names, but you can use their i,j position in the matrix.

It can be compiled with pdflatex if you set the switch --enable-write18 (MiKTeX)or--shell-escape` (TeX Live, MacTeX):



\[ \psset{arrows=->, nodesep=3pt, labelsep=3pt, colsep=1.2cm, rowsep=1.8cm}
  C_{p-1}(X) & C_p(X) \\%
   & C_p(X × [0,1])&C_{p + 1}(X × [0,1])
   \ncline{1,2}{1,1}\nbput{∂} \ncline{2,3}{2,2}\nbput{∂}
   \ncline{1,1}{2,2}\naput[labelsep =0pt]{K_{p-1}} \ncline{1,2}{2,3}\naput[labelsep =0pt]{K_p}
   \ncline[offset=- 0.8ex]{1,2}{2,2}\nbput{i_p}\ncline[offset=0.8ex]{1,2}{2,2}\naput{i'_p}

enter image description here

  • it makes me error, i'm using texmaker – Vrouvrou Sep 7 '14 at 20:02
  • Did you try the latex + dvips way? I guess the mentioned switch is not enabled on your system. You should configure TeXmaker (Options menu) with this line for pdflatex:pdflatex -synctex=1 -interaction=nonstopmode -shell-escape %.tex. – Bernard Sep 7 '14 at 20:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.