Sign up ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I have a diagram of the following form, written with the package amscd:

  W @>\phi>> X \\
  @V{a}V{b}V  @V{c}V{d}V \\
  Y @>\phi>> Z \\

It want the vertical arrows to be parallel arrows in opposite direction, such that a and c point downwards and b and d point upwards. (For those who understand the terms, it is about an isomorphism between chain complexes.)

To my best knowledge, amscd does not provide these features. Can you show me a piece of code that provides this functionality and is similarly easy to use?

share|improve this question
Do this question and its answers help? – clemens Mar 23 '12 at 14:02

2 Answers 2

up vote 6 down vote accepted

First of all don't use align* for a single object and prefer equation*.

Simple commutative diagrams with the CD environment can have arrows pointing

  • right

  • left

  • down

  • up


However CD doesn't allow for "double arrows" and you have to go to a more specialized package. For instance xy:

   W \ar[r]^{\phi} \ar@<-2pt>[d]_{a} & X \ar@<-2pt>[d]_{c} \\
   Y\ar@<-2pt>[u]_{b} \ar[r]^{\phi} & Z \ar@<-2pt>[u]_{d}

enter image description here

share|improve this answer
Thankyou for this answer! It helped me solve the last diagram issue that I had here: – qu1j0t3 Aug 8 '14 at 2:18

In addition to egregs answer, one could use the package tikz-cd for this:

% arara: pdflatex


W \arrow{r}{\phi} \arrow[shift right, swap]{d}{a}& X \arrow[shift right, swap]{d}{c}\\
Y \arrow{r}{\phi} \arrow[shift right, swap]{u}{b} & Z \arrow[shift right, swap]{u}{d}

enter image description here

share|improve this answer
Thanks, I guess that tikz-cd wasn't available at the time of my answer (or it was still too preliminary). – egreg Oct 9 '14 at 11:10

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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