xypic:2 單元三角形恆等式

xypic:2 單元三角形恆等式

我想使用xypic範疇論中伴隨函子定義中的三角形恆等式來排版。我的問題是創建連接斜邊和對角線的雙箭頭。

在此輸入影像描述

這是我自己可以做的(完全微不足道的)部分,除了雙箭頭之外的所有內容: \xymatrix{ C\ar[r]^{F}\ar[dr]_{1_{C}} & D\ar[d]^{G} & & D\ar[dr]^{1_{D}}\ar[d]_{G}\\ & C & & C\ar[r]_{F} & D }

據說有一種方法可以在 中創建這種“粘貼圖表” xypic,但我沒有在任何地方找到任何明確的說明;我知道該命令\compositemap以某種方式涉及,但我不知道如何使用它。

答案1

我不再使用了xy,因為它不像以前那麼簡單和強大。我希望這個解決方案也能幫助您:

% arara: pdflatex

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

\begin{document}    
\[\begin{tikzcd}[row sep=3em]
C \arrow{r}{F} \arrow[""{name=foo}]{dr}[swap]{1_C} & D \arrow{d}{G} \arrow[Rightarrow, from=foo, swap, near start, "\eta"]& D \arrow{d}[swap]{G} \arrow[""{name=bar, below}]{dr}{1_D} & \\
& C & C \arrow{r}[swap]{F} \arrow[Rightarrow, to=bar, swap, near start, "\varepsilon"] & D
\end{tikzcd}\]
\end{document}

在此輸入影像描述


如您所願,這裡有一個解決方案xy。這是相當老套的。我想使用 Sigur 提到的例子會更好。但由於xy能夠管理空矩陣條目,我使用它來將箭頭指向我想要的位置。不過,雙倍數量的矩陣節點是必要的。

% arara: pdflatex

\documentclass{article}
\usepackage[%
,all
%,cmtip % recommended, but I do not know how to get it to work for the double arrow
]{xy}

\begin{document}    
\[\xymatrix@R=4mm @C=4mm{ 
    C\ar[rr]^{F} \ar[ddrr]_{1_{C}} & & D \ar[dd]^{G} & & D \ar[ddrr]^{1_{D}} \ar[dd]_{G} & & \\ 
    &\ar@2{->}[ur]_{\eta} & & & & & \\
    & & C & & C \ar@2{->}[ur]_{\varepsilon} \ar[rr]_{F} & & D 
}\]
\end{document}

在此輸入影像描述

答案2

另一種xy-pic解決方案採用不同的方法:

\documentclass{article}
\usepackage[all]{xy}

\begin{document}
\[
\xymatrix{ 
  C\ar[r]^{F}\ar[dr]_{1_{C}} & D\ar[d]^{G}\ar@{<=}[dl]+<22pt>^>>>{\eta} & & D\ar[dr]^{1_{D}}\ar[d]_{G}                      & \\ 
                             & C                                        & & C\ar[r]_{F}\ar@{=>}[ur]-<22pt>_>>>{\varepsilon} & D 
}
\]
\end{document} 

輸出:

在此輸入影像描述

答案3

我只是看了同樣的東西並嘗試使用該2cell功能xy-pic。讀完後參考手冊,我認為“正確”的解決方案如下

\documentclass[border=10pt]{standalone}
\usepackage[all,2cell]{xy}
\UseAllTwocells

\begin{document}
\[
\xymatrix{C\drtwocell\omit{^<-2>\eta}\ar_{1_C}[dr]\ar^F[r]&D\ar^G[d]&
D\drtwocell\omit{^<2>\varepsilon}\ar^{1_D}[dr]\ar_G[d]&\\
&C&C\ar_F[r]&D}
\]
\end{document}

程式碼讀作\drtwocell\omit{^<-2>\eta},其中\omit表示我們將省略兩個彎曲箭頭,^指定 2-cell 的方向,並<-2>微移標籤(否則它將位於中心點)。

輸出:

在此輸入影像描述

有一個問題:你不能指定標籤相對於 2 單元的哪一側。看來這還沒有實現,所以也許這是我們在沒有其他技巧的情況下可以做的最好的事情。

相關內容