The command \rightrightarrows (from amssymb) draws two arrows, one on top of another. How do I get three arrows arranged in a similar fashion? An example of this (and other fancy arrow stackings) appears on page 3 of this paper, for which a source file unfortunately does not seem to be available. Commands like \stackrel and \overset do not size or space things properly.

  • I’m rather surprised that there is no package with these symbols. For three arrows there is even a Unicode symbol (which unicode-math exposes as \rightthreearrows). – Caramdir Sep 2 '10 at 9:37

Use \substack

$X\substack{\rightarrow\\[-1em] \rightarrow \\[-1em] \rightarrow} Y$

you can change [-1em] to be any value as you want.

(Added by Hendrik Vogt:) With

$X \mathrel{\substack{\textstyle\rightarrow\\[-0.6ex]
                      \textstyle\rightarrow \\[-0.6ex]
                      \textstyle\rightarrow}} Y$

you get something quite close to \rightrightarrows.


How about the following?



This is basically how \overbrace works except that it uses a fill and a \vbox instead of a \vcenter.

  • You could add some spacing to cause the arrows to not overlap. I didn't even notice it until just now though. – TH. Sep 3 '10 at 8:30
  • I think you should use \mathrel, not \mathop for correct spacing (\rightrightarrows are \mathrel). – Hendrik Vogt Dec 17 '10 at 10:38
  • @Hendrik: Thanks. Fixed. (I didn't change the picture though.) – TH. Dec 17 '10 at 10:43

Use TikZ!



\tikz[minimum height=0ex]
   node (a)            {}
   node (b) at (1em,0) {}
  (a.north)  edge (b.north)
  (a.center) edge (b.center)
  (a.south)  edge (b.south);%


A \triplerightarrow B

The minimum height=0ex doesn't do anything. I included it to show how to increase the separation of the arrows if desired. To get longer arrows, increase the 1em (this could be made an optional parameter, of course, and with a bit of work could be made so that there was a(nother) parameter specifying some text on top whereupon the arrows scaled to the correct length).

  • 1
    TikZ is kind of overkill, I think, and the arrows look different from \rightrightarrows. – Hendrik Vogt Dec 17 '10 at 10:37
  • @Hendrik: On the first point I concede, except for the fact that I tend to load TikZ for every document nowadays so as it's already there, why not use it for this construction? On the second, I don't see that much difference. The lines look a little crisper in the TikZ one at 400 magnification, and are perhaps 1pt too long (corrected with shorten >=1pt). If you want the arrows to touch, use inner sep=.3em. I think that a TikZ arrow looks much better than that typeset by, say, \xrightarrow so I'd count the discrepancy as a minus for \rightrightarrows than the other way around. – Loop Space Dec 17 '10 at 10:55
  • Well, of course it's a good question which arrow looks better. But you conceded that you do see a difference, and that was my point. If you use different arrows (e.g. the simple \to), then they should look the same, have the same spacing and so on. And it's quite hard to get it so close with TikZ that you can't see a difference. – Hendrik Vogt Dec 18 '10 at 8:04

You can mess around with XY-pic, the \xymatrix command in particular could be used. You might begin with the XY-pic User's Guide (pdf).

For example, if you \input xy and \xyoption{all} in your preamble, then

  A\ar@<1ex>[r]\ar[r]\ar@<-1ex>[r] & B

Will produce 3 arrows from A to B.


Inspired by \threesim in symbols-a4, which stacks three \sim symbols, here's a solution for stacking and vertically centering a symbol three times:


You may use it to stack three right or left arrows or others, just a dot for example:



$X\triplerightarrow Y\tripledot\tripleleftarrow Z$

alt text

You might adjust the spacing using the optional argument, perhaps choose another arrow with a smaller tip if you like.

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.