Код:
$$\xymatrix{{X_1}\ar[dddd]_{f_1}\ar[rddd]_(.65){f_{1\mathfrak A_1}}\ar[rdd]^{h_{11}}\ar[rrd]^{\tilde g_{1h\alpha}}\ar[rrrr]^{\phi_1}&&&&{X_2}\ar[lld]_{\tilde g_{2\alpha}}\ar[ldd]_{h_{21}}\ar[lddd]^(.65){f_{2\mathfrak A_2}}\ar[dddd]^{f_2}\\&&{\mathbb R}\\&{X'_1}\ar[ldd]_{h_{12}}\ar[d]^(.35)*\txt{\rotatebox{90}{$\supseteq$}}\ar[rr]^{\phi_0}\ar[ru]^{\bar g_{1h\alpha}}&&{X'_2}\ar[d]_(.35)*\txt{\rotatebox{90}{$\supseteq$}}\ar[rdd]^{h_{22}}\ar[lu]_{\bar g_{2\alpha}}\\&{Y_{1\mathfrak A_1}}\ar[ld]^{^{\mathfrak A_1}\pi_1}\ar[rr]^{\bar\phi}\ar[ruu]_(.35){^{\mathfrak A_1}_{h\alpha}\psi_1}&&{Y_{2\mathfrak A_2}}\ar[rd]_{^{\mathfrak A_2}\pi_2}\ar[luu]^(.35){^{\mathfrak A_2}_{\phantom h\alpha}\psi_2}\\{Y_1}\ar[rrrr]^{\phi_2}&&&&{Y_2}}$$
![$\xymatrix{A\ar@{<->}[rrr]&&&B}$ $\xymatrix{A\ar@{<->}[rrr]&&&B}$](https://dxdy-03.korotkov.co.uk/f/6/5/f/65f0a19985690a1e8557fc5c1a52985d82.png)
Код:
$\xymatrix{A\ar@{<->}[rrr]&&&B}$
Представляйте себе коммутативную диаграмму как прямоугольную матрицу. Её элементы в одной строке разделяются символами &, строки - парами символов \\.
Если некоторые ячейки матрицы пустые, то вместо них пишутся символы &. Например, во втором примере между

и

имеются две пустых ячейки, поэтому стоят три символа &. Аналогично пустые строки создаются дополнительными символами \\.
В ячейке должно быть написано обозначение узла диаграммы, а следом за обозначением узла - коды стрелок.
Код стрелки начинается с ключевого слова \ar.
Следом идёт обозначение изгиба стрелки (для прямой стрелки не нужно), которое имеет вид @/_длина/ или @/^длина/ (есть и другие конструкции). "Длина" (величина изгиба) указывается в

овских единицах (можно не указывать), направление изгиба определяется относительно направления стрелки, которая считается выходящей из того узла, в котором она закодирована ("_" - вправо, "^" - влево):
![$\xymatrix{A\ar@/_10pt/@{<->}[rrr]&&&B}$ $\xymatrix{A\ar@/_10pt/@{<->}[rrr]&&&B}$](https://dxdy-03.korotkov.co.uk/f/2/e/b/2eb39b2dd2d4e451cac23923a1e87a6282.png)
или
![$\xymatrix{A\ar@/^10pt/@{<->}[rrr]&&&B}$ $\xymatrix{A\ar@/^10pt/@{<->}[rrr]&&&B}$](https://dxdy-01.korotkov.co.uk/f/8/7/4/8743431b49074436d999d16c7a06563982.png)
![$\xymatrix{A&&&B\ar@/_10pt/@{<->}[lll]}$ $\xymatrix{A&&&B\ar@/_10pt/@{<->}[lll]}$](https://dxdy-02.korotkov.co.uk/f/9/a/4/9a40b82e7daea6adb4c74adbf3ffad0782.png)
или
![$\xymatrix{A&&&B\ar@/^10pt/@{<->}[lll]}$ $\xymatrix{A&&&B\ar@/^10pt/@{<->}[lll]}$](https://dxdy-03.korotkov.co.uk/f/2/1/7/217f37d1bdab43f06efce785e82992a782.png)
Код:
$\xymatrix{A\ar@/_10pt/@{<->}[rrr]&&&B}$ или $\xymatrix{A\ar@/^10pt/@{<->}[rrr]&&&B}$
$\xymatrix{A&&&B\ar@/_10pt/@{<->}[lll]}$ или $\xymatrix{A&&&B\ar@/^10pt/@{<->}[lll]}$
Третий элемент обозначения стрелки определяет её вид (для обычной стрелки можно опустить). Он имеет вид @{...}. У Львовского приведён ряд примеров, и сказано, что по аналогии можно придумывать другие, которые иногда работают:
![$\xymatrix{A\ar@{.>}[rrr]&&&B}$ $\xymatrix{A\ar@{.>}[rrr]&&&B}$](https://dxdy-03.korotkov.co.uk/f/a/a/3/aa3ebdc26b25caa1d952b3d62c045c7582.png)
![$\xymatrix{A\ar@{<->}[rrr]&&&B}$ $\xymatrix{A\ar@{<->}[rrr]&&&B}$](https://dxdy-03.korotkov.co.uk/f/6/5/f/65f0a19985690a1e8557fc5c1a52985d82.png)
![$\xymatrix{A\ar@{|->}[rrr]&&&B}$ $\xymatrix{A\ar@{|->}[rrr]&&&B}$](https://dxdy-03.korotkov.co.uk/f/e/5/e/e5e76c69ae98f61c25fcdbb1e51ac5ca82.png)
![$\xymatrix{A\ar@{-_{>}}[rrr]&&&B}$ $\xymatrix{A\ar@{-_{>}}[rrr]&&&B}$](https://dxdy-01.korotkov.co.uk/f/0/9/2/0920179c61fcb2fbcce0c7c570f7748682.png)
![$\xymatrix{A\ar@3{-}[rrr]&&&B}$ $\xymatrix{A\ar@3{-}[rrr]&&&B}$](https://dxdy-04.korotkov.co.uk/f/7/f/2/7f2888ad68caa4b0af9e3081a030baf082.png)
Код:
$\xymatrix{A\ar@{-->}[rrr]&&&B}$ $\xymatrix{A\ar@{=>}[rrr]&&&B}$ $\xymatrix{A\ar@{.>}[rrr]&&&B}$
$\xymatrix{A\ar@{>->}[rrr]&&&B}$ $\xymatrix{A\ar@3{->}[rrr]&&&B}$ $\xymatrix{A\ar@{<->}[rrr]&&&B}$
$\xymatrix{A\ar@{->>}[rrr]&&&B}$ $\xymatrix{A\ar@{<=>}[rrr]&&&B}$ $\xymatrix{A\ar@{|->}[rrr]&&&B}$
$\xymatrix{A\ar@{^{(}->}[rrr]&&&B}$ $\xymatrix{A\ar@{-^{>}}[rrr]&&&B}$ $\xymatrix{A\ar@{-_{>}}[rrr]&&&B}$
$\xymatrix{A\ar@{-}[rrr]&&&B}$ $\xymatrix{A\ar@{=}[rrr]&&&B}$ $\xymatrix{A\ar@3{-}[rrr]&&&B}$
Четвёртый (обязательный) элемент указывает направление и длину стрелки. Он имеет вид [...], где в скобках указывается последовательность букв u (вверх), d (вниз), r (вправо), l (влево). Количество букв определяет число шагов в указанном направлении. Во всех предыдущих примерах, кроме самого первого, указаны [rrr] или [lll], что означает три шага вправо или влево.
![$\xymatrix{X\ar[rd]_f\ar[rr]^{\subseteq}&&{v_fX}\ar[ld]^{f_v}\\&Y}$ $\xymatrix{X\ar[rd]_f\ar[rr]^{\subseteq}&&{v_fX}\ar[ld]^{f_v}\\&Y}$](https://dxdy-03.korotkov.co.uk/f/e/5/a/e5a6232faf83ee9323757a457393b40482.png)
Код:
$\xymatrix{X\ar[rd]_f\ar[rr]^{\subseteq}&&{v_fX}\ar[ld]^{f_v}\\&Y}$
Пятый (необязательный элемент) - надпись около стрелки. Этот элемент записывается как ^{текст} (слева от направления стрелки) или _{текст} (справа от направления стрелки). Надпись располагается посередине между центрами узлов. Если названия узлов сильно различаются по величине, то можно использовать конструкцию ^-{текст} или _-{текст}, тогда надпись будет посередине стрелки. Можно использовать конструкцию типа ^(0.3){текст} или _(0.3){текст}, в которой число указывает, какую долю расстояния между центрами узлов нужно оставить перед надписью (от начала стрелки).
![$\xymatrix{A\ar[rrr]^{f}_-{f}&&&BBBBB}$ $\xymatrix{A\ar[rrr]^{f}_-{f}&&&BBBBB}$](https://dxdy-04.korotkov.co.uk/f/f/0/0/f00536fffd0b49ff4c2f8f46a99e995882.png)
![$\xymatrix{A\ar[rrr]^(0.3){f}_(0.7){f}&&&B}$ $\xymatrix{A\ar[rrr]^(0.3){f}_(0.7){f}&&&B}$](https://dxdy-01.korotkov.co.uk/f/8/0/9/809ff0b5002a045dcff3a3d0ce07734a82.png)
![$\xymatrix{A\ar[rrr]^(0.3){f}_(0.7){f}&&&BBBBB}$ $\xymatrix{A\ar[rrr]^(0.3){f}_(0.7){f}&&&BBBBB}$](https://dxdy-03.korotkov.co.uk/f/e/b/0/eb0bd4377e9cf8f7d8e5d34ebd9da99582.png)
![$\xymatrix{A&&&BBBBB\ar[lll]^{f}_-{f}}$ $\xymatrix{A&&&BBBBB\ar[lll]^{f}_-{f}}$](https://dxdy-03.korotkov.co.uk/f/2/5/7/257ba500faa64a9455a26fa3c630099f82.png)
![$\xymatrix{A&&&B\ar[lll]^(0.3){f}_(0.7){f}}$ $\xymatrix{A&&&B\ar[lll]^(0.3){f}_(0.7){f}}$](https://dxdy-01.korotkov.co.uk/f/0/8/2/0826e18bb23156ac0c5572f365c3440082.png)
![$\xymatrix{A&&&BBBBB\ar[lll]^(0.3){f}_(0.7){f}}$ $\xymatrix{A&&&BBBBB\ar[lll]^(0.3){f}_(0.7){f}}$](https://dxdy-04.korotkov.co.uk/f/b/e/2/be271fe0426df40f2c99c721d58a0cca82.png)
Код:
$\xymatrix{A\ar[rrr]^{f}_-{f}&&&BBBBB}$
$\xymatrix{A\ar[rrr]^(0.3){f}_(0.7){f}&&&B}$
$\xymatrix{A\ar[rrr]^(0.3){f}_(0.7){f}&&&BBBBB}$
$\xymatrix{A&&&BBBBB\ar[lll]^{f}_-{f}}$
$\xymatrix{A&&&B\ar[lll]^(0.3){f}_(0.7){f}}$
$\xymatrix{A&&&BBBBB\ar[lll]^(0.3){f}_(0.7){f}}$
Для использования пакета

в преамбуле документа должно быть написано
\usepackage[all]{xy}
(на форуме этот пакет включается автоматически).