Latex code for connections in double groupoids



The following macros are to construct the symbols for the connections and thin elements in a double groupoid used in the book `Nonabelian algebraic topology' (EMS Tract vol 15, Autumn, 2010) by R. Brown, P.J. Higgins, R. Sivera. An example of their use is shown in the diagram on the left used in a proof::

I am happy for people to use them if they want, and even better if they can improve on them, and let me know!

\newcommand{\bl}{\mbox{\rule{0.08em}{1.7ex}\hspace{-0.00em}\rule{0.7em}{0.2ex}}}

\newcommand{\br}{\mbox{\rule{0.7em}{0.2ex}\hspace{-0.04em}\rule{0.08em}{1.7ex}}}

\newcommand{\tr}{\mbox{\rule[1.5ex]{0.7em}{0.2ex}\hspace{-0.03em}\rule{0.08em}{1.7ex}}}

\newcommand{\tl}{\mbox{\rule{0.08em}{1.7ex}\rule[1.54ex]{0.7em}{0.2ex}}}

\newcommand{\hh}{\mbox{\rule{0.7em}{0.2ex}\hspace{-0.7em}\rule[1.5ex]{0.70em}{0.2ex}}}

\newcommand{\vv}{\mbox{\rule{0.08em}{1.7ex}\hspace{0.6em}\rule{0.08em}{1.7ex}}}

\newcommand{\sq}{\mbox{\rule{0.08em}{1.7ex}\hspace{-0.00em}\rule{0.7em}{0.2ex}\hspace{-0.7em}\rule[1.475ex]{0.7em}{0.2ex}\hspace{-0.03em}\rule{0.08em}{1.7ex}}}

\newcommand{\tsq}{\mbox{\rule{0.04em}{1.55ex}\hspace{-0.00em}\rule{0.7em}{0.1ex}\hspace{-0.7em}\rule[1.5ex]{0.7em}{0.1ex}\hspace{-0.03em}\rule{0.04em}{1.55ex}}}

\newcommand{\tssq}{\mbox{\rule{0.04em}{1.55ex}\hspace{-0.00em}\rule{0.7em}{0.1ex}\hspace{-0.7em}\rule[1.5ex]{0.7em}{0.1ex}\hspace{-0.03em}\rule{0.04em}{1.55ex}\hspace{-0.43em}\rule[0.7ex]{0.1em}{0.2ex}}}

Next some code for direction arrows.

\newcommand{\directs}[2]{\def\objectstyle{\scriptstyle} \objectmargin={0pt}\xy(0,4)*+{}="a",(0,-2)*+{\rule{0em}{1.5ex}#2}="b",(7,4)*+{\;#1}="c"\ar@{->} "a";"b" \ar @{->}"a";"c" \endxy }

%the next gives two direction arrows at the middle of a 2 x 2 matrix

\newcommand{\xdirects}[2]{\def\objectstyle{\scriptstyle} \objectmargin={0pt}\xy(0,0)*+{}="a",(0,-6)*+{\rule{0em}{1.5ex}#2}="b",(7,0)*+{\;#1}="c"\ar@{->} "a";"b" \ar @{->}"a";"c" \endxy }

%and this is smaller for a 1 x 1 matrix

\newcommand{\sdirects}[2]{\def\objectstyle{\scriptstyle} \objectmargin={0pt}\xy(0,2.2)*+{}="a",(0,-2.5)*+{\rule{0em}{1.5ex}#2}="b",(7,2.2)*+{\;#1}="c"\ar@{->} "a";"b" \ar @{->}"a";"c" \endxy }

\newcommand{\threeaxesb}[3]{\def\objectstyle{\scriptstyle} \objectmargin={0pt}\xy(0,0)*+{}="a",(0,-8)*+{\rule{0em}{1.5ex}#2}="b",(10,0)*+{\;#1}="c",(8,7)*+{\;#3}="d" \ar@{->} "a";"b" \ar @{->}"a";"c" \ar@{->}"a";"d"\endxy }

Ronnie Brown

June 30, 2010