|
Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
% This is the "edrx08.sty" file of dednat4.
% (find-dn4ex "edrx08.sty")
% http://angg.twu.net/dednat4/examples/edrx08.sty
% http://angg.twu.net/dednat4/examples/edrx08.sty.html
% Author: Eduardo Ochs <eduardoochs@gmail.com>
% Version: 2008nov14
% I use this as my main include(d) file.
% This is not self-contained! It has some "\input"s - namely:
% \input edrxdnt.tex % (find-dn4ex "edrxdnt.tex")
% \input edrxdefs.tex % (find-dn4ex "edrxdefs.tex")
% Also, this file is loaded by:
% (find-dn4ex "edrxmain41.tex")
% (find-dn4ex "edrxmain41a.tex")
% See also:
% (find-dn4 "Makefile" "demo1")
% Here's a minimal example of use:
% create a file "foo.tex" containing this:
% (strip out the initial "%"s, of course...)
%
% --snip--snip--
% \documentclass[oneside]{book}
% \usepackage[latin1]{inputenc}
% \usepackage{edrx08}
% %L process "edrx08.sty" -- (find-dn4ex "edrx08.sty")
% % For the footer with the filename and a timestamp:
% \input edrxheadfoot.tex
% \begin{document}
%
% % Run this to produce foo.dnt:
% % (find-sh "~/dednat4/dednat41 foo.tex")
% % Make LaTeX load the TeXed versions of the trees and diagrams:
% \input foo.dnt
%
% %D diagram adjunction-DNC
% %D 2Dx 100 +20
% %D 2D 100 a,b <==== a
% %D 2D - -
% %D 2D | <--> |
% %D 2D v v
% %D 2D +20 c ===> b|->c
% %D 2D
% %D (( a,b a
% %D c b|->c
% %D @ 0 @ 1 <= @ 0 @ 2 |-> @ 1 @ 3 |-> @ 2 @ 3 =>
% %D @ 0 @ 3 harrownodes nil 20 nil <->
% %D ))
% %D enddiagram
%
% $$\diag{adjunction-DNC}$$
%
% \end{document}
% --snip--snip--
%
% Then run:
% ~/dednat4/dednat41 foo.tex
% latex foo.tex
% xdvi foo.dvi
% «.bbold» (to "bbold")
% «.glyphs» (to "glyphs")
% «.ttchars» (to "ttchars")
% «.arrows» (to "arrows")
% «.limp» (to "limp")
% «.pbsymbol» (to "pbsymbol")
% «.standardabbrevs» (to "standardabbrevs")
% «.experimental.lua» (to "experimental.lua")
% «.slides» (to "slides")
% «.colors» (to "colors")
% «.dags» (to "dags")
% «.savebox» (to "savebox")
% «.crossover» (to "crossover")
% «.diagprep» (to "diagprep")
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{mathrsfs}
\usepackage{stmaryrd}
\usepackage{array}
\usepackage{url}
\usepackage{color}
\usepackage{graphicx} % <- temporary?
% \usepackage{pxfonts} % <- temporary?
% \usepackage{fitch} % <- temporary?
% \usepackage{hyperref}
%\usepackage{verbatimbox} % <- temporary?
% (find-es "tex" "verbatimbox")
\usepackage{shortvrb}
% _ _ _ _
% | |__ | |__ ___ | | __| |
% | '_ \| '_ \ / _ \| |/ _` |
% | |_) | |_) | (_) | | (_| |
% |_.__/|_.__/ \___/|_|\__,_|
%
% «bbold» (to ".bbold")
% Amsfonts.sty's "\mathbb" uses the "bbm10" font, that has nice
% blackboard bold letters, but only a few other characters...
% Bbold.sty redefines "\mathbb" to use the "bbold10" font, that has
% more characters, but then the letters become much uglier...
% This hack is a possible solution - it makes both fonts available at
% once, the one from amsfonts as \mathbb, the other one as \mathbbold.
%
% (find-fline "/usr/share/texmf-tetex/tex/latex/amsfonts/amsfonts.sty" "\\mathbb")
% (find-fline "/usr/share/texmf-tetex/tex/latex/bbold/bbold.sty" "\\mathbb")
%
\newcommand{\bbfamily}{\fontencoding{U}\fontfamily{bbold}\selectfont}
\newcommand{\textbbold}[1]{{\bbfamily#1}}
\DeclareMathAlphabet{\mathbbold}{U}{bbold}{m}{n}
\def\mathbblow{\mathbbold} % lowercase letters are usually better on bbold
\def\mathbbnum{\mathbbold} % only bbold has all digits
% To compare bbm and bbold:
% (find-angg ".emacs" "find-testfont")
% (find-testfont "\\T{bbm10}\\T{bbold10}")
% (eedn4a "$\\mathbb{ABCDEINRZ}\\mathbblow{abcdeinrz}\\mathbbnum{0123456789}$")
% _ _
% __ _| |_ _ _ __ | |__ ___
% / _` | | | | | '_ \| '_ \/ __|
% | (_| | | |_| | |_) | | | \__ \
% \__, |_|\__, | .__/|_| |_|___/
% |___/ |___/|_|
%
% «glyphs» (to ".glyphs")
% (find-eev "eev-compose.el")
\catcode`¬=13 \def¬{\neg}
\catcode`×=13 \def×{\times}
\catcode`·=13 \def·{\cdot}
\catcode`*=13 \def*{\ensuremath{\bullet}}
\catcode`=13 \def{\llbracket}
\catcode`=13 \def{\rrbracket}
% Þ寨ðÛÏ
% §®∧∨⊃ýÎñ¨Ý¢ÌþÅ¿‚©³
% Ñ¥¤¸î£¦¯ËÐ
% (find-eev "eev-math-glyphs.el")
% (find-lsrcfile "stmaryrd/stmaryrd.sty")
%
\catcode`Þ=13 \defÞ{\Theta}
\catcode`å=13 \defå{\Pi}
\catcode`Æ=13 \defÆ{\Sigma}
\catcode`Ø=13 \defØ{\Omega}
\catcode`=13 \def{\delta}
\catcode`=13 \def{\varepsilon}
\catcode`=13 \def{\theta}
\catcode`ð=13 \defð{\lambda}
\catcode`Û=13 \defÛ{\nu}
\catcode`=13 \def{\pi}
\catcode`=13 \def{\rho}
\catcode`=13 \def{\sigma}
\catcode`=13 \def{\tau}
\catcode`Ï=13 \defÏ{\omega}
\catcode`§=13 \def§{\top}
\catcode`®=13 \def®{\bot}
\catcode`∧=13 \def∧{\land}
\catcode`∨=13 \def∨{\lor}
\catcode`⊃=13 \def⊃{\limp}
\catcode`ý=13 \defý{\forall}
\catcode`Î=13 \defÎ{\exists}
\catcode`ñ=13 \defñ{\Box}
\catcode`¨=13 \def¨{{:}}
\catcode`Ý=13 \defÝ{\in}
\catcode`¢=13 \def¢{\circ}
\catcode`Ì=13 \defÌ{\cap}
\catcode`þ=13 \defþ{\cup}
\catcode`Å=13 \defÅ{\int}
\catcode`¿=13 \def¿{^\perp}
\catcode`‚=13 \def‚{\infty}
\catcode`©=13 \def©{\ge}
\catcode`³=13 \def³{^{-1}}
\catcode`=13 \def{\sqcap}
\catcode`÷=13 \def÷{\sqcup}
\catcode`Ñ=13 \defÑ{\bindnasrepma}
\catcode`¤=13 \def¤{\otimes}
\catcode`¥=13 \def¥{\oplus}
\catcode`¸=13 \def¸{\pi}
\catcode`î=13 \defî{\natural}
\catcode`=13 \def{\underline}
\catcode`£=13 \def£{\vec}
\catcode`¦=13 \def¦{\mathbf}
\catcode`¯=13 \def¯{\mathrm}
\catcode`Ë=13 \defË{\text}
\catcode`Ð=13 \defÐ{\mathsf}
% \catcode`º=13 \defº{${}^\underline{\mathrm{o}}$}
% \def\sto{\Rrightarrow} % syntactic "to"
% _ _ _
% | |_| |_ ___| |__ __ _ _ __ ___
% | __| __/ __| '_ \ / _` | '__/ __|
% | |_| || (__| | | | (_| | | \__ \
% \__|\__\___|_| |_|\__,_|_| |___/
%
% Use this macro to produce the \def_{\ttchar...} lines (below) from
% catcode/def lines (above):
% (setq last-kbd-macro (kbd "13*<delete> SPC 7*<right> \\ ttchar { $ C-e <left> $ } C-a <down>"))
%
% «ttchars» (to ".ttchars")
% (find-es "tex" "leavevmode")
%\def\ttchar#1{\setbox0=\hbox{\texttt{a}}\hbox to \wd0{\hss#1\hss}}
\def\ttchar#1{\setbox0=\hbox{\texttt{a}}\leavevmode\hbox to \wd0{\hss#1\hss}}
\def\basicttchars{
\def¬{\ttchar{$\neg$}}
\def·{\ttchar{$\cdot$}}
\def×{\ttchar{$\times$}}
\def*{\ttchar{$\bullet$}}
\def«{\ttchar{$\langle\!\langle$}}
\def»{\ttchar{$\rangle\!\rangle$}}
\def{\ttchar{$\llbracket$}}
\def{\ttchar{$\rrbracket$}}
\defÞ{\ttchar{$\Theta$}}
\defå{\ttchar{$\Pi$}}
\defÆ{\ttchar{$\Sigma$}}
\defØ{\ttchar{$\Omega$}}
\def{\ttchar{$\delta$}}
\def{\ttchar{$\varepsilon$}}
\def{\ttchar{$\theta$}}
\defð{\ttchar{$\lambda$}}
\defÛ{\ttchar{$\nu$}}
\def{\ttchar{$\pi$}}
\def{\ttchar{$\rho$}}
\def{\ttchar{$\sigma$}}
\def{\ttchar{$\tau$}}
\defÏ{\ttchar{$\omega$}}
\def§{\ttchar{$\top$}}
\def®{\ttchar{$\bot$}}
\def∧{\ttchar{$\land$}}
\def∨{\ttchar{$\lor$}}
\def⊃{\ttchar{$\limp$}}
\defý{\ttchar{$\forall$}}
\defÎ{\ttchar{$\exists$}}
\defñ{\ttchar{$\Box$}}
\def¨{\ttchar{${:}$}}
\defÝ{\ttchar{$\in$}}
\def¢{\ttchar{$\circ$}}
\defÌ{\ttchar{$\cap$}}
\defþ{\ttchar{$\cup$}}
\defÅ{\ttchar{$\int$}}
\def¿{\ttchar{$^\perp$}}
\def‚{\ttchar{$\infty$}}
\def©{\ttchar{$\ge$}}
\def³{\ttchar{${}^{\text{-\!1}}$}}
\def{\ttchar{$\sqcap$}}
\def÷{\ttchar{$\sqcup$}}
\defÑ{\ttchar{$\bindnasrepma$}}
\def¤{\ttchar{$\otimes$}}
\def¥{\ttchar{$\oplus$}}
\def¸{\ttchar{$\pi$}}
\defî{\ttchar{$\natural$}}
% \catcode`=13 \def{\underline}
% \catcode`£=13 \def£{\vec}
% \catcode`¦=13 \def¦{\mathbf}
% \catcode`¯=13 \def¯{\mathrm}
% \catcode`Ë=13 \defË{\text}
% \catcode`Ð=13 \defÐ{\mathsf}
% For Coq, 2009oct23:
\def{\ttchar{$\langle\!\langle$}}
\def{\ttchar{$\rangle\!\rangle$}}
}
\def\ttchars{\basicttchars}
\def\myttchars{\basicttchars}
%
% __ _ _ __ _ __ _____ _____
% / _` | '__| '__/ _ \ \ /\ / / __|
% | (_| | | | | | (_) \ V V /\__ \
% \__,_|_| |_| \___/ \_/\_/ |___/
%
% «arrows» (to ".arrows")
% (find-symbolspage 41)
\def\ito{\hookrightarrow}
\def\isoto{\underset{iso}{\to}}
\def\epito{{\twoheadrightarrow}}
\def\bij{\leftrightarrow}
\def\toto{\rightrightarrows}
\def\functo{\Rightarrow}
\def\ton#1{\overset{#1}{\to}}
\def\xton#1{\xrightarrow{#1}}
\def\iton#1{\overset{#1}{\ito}}
\def\otn#1{\overset{#1}{\ot}}
\def\TNto{\overset{.}{\to}}
\def\idto{\overset{id}{\to}}
\def\vaipra{\quad\Longrightarrow\quad}
\def\funto{\Rightarrow}
\def\funton#1{\overset{#1}\Rightarrow}
\def\tnto{\ton{\bullet}}
%\def\iff{\Leftrightarrow}
\def\Bij{\Leftrightarrow}
\def\funot{\Leftarrow}
\def\dnto{\downarrow}
\def\upto{\uparrow}
\def\dnfunto{\Downarrow}
\def\upfunto{\Uparrow}
\def\monicto{\rightarrowtail}
\def\monicot{\leftarrowtail}
\def\ot{\leftarrow}
\def\squigto{\rightsquigarrow}
\def\squigbij{\leftrightsquigarrow}
\def\sqto{\rightsquigarrow}
\def\sqbij{\leftrightsquigarrow}
\def\vbij{\updownarrow}
\def\lrto{\leftrightarrows}
\def\mto{{\mapsto}}
\def\mton#1{\overset{#1}{\mto}}
\def\widemtos{\def\mto{\mapsto}}
\def\thinmtos{\def\mto{{\mapsto}}}
\def\lmto{\mapsto}
\def\tnton#1{\underset{#1}{\overset{\bullet}{\to}}}
\def\mapsot{\leftarrow\mapsfromchar}
\def\mot{{\mapsot}}
\def\iot{\hookleftarrow}
\def\dashto{\dashrightarrow}
\def\dashot{\dashleftarrow}
\def\mdashto{\mapstochar\dashrightarrow}
\def\mdashot{\dashleftarrow\mapsfromchar}
% _ _
% | (_)_ __ ___ _ __
% | | | '_ ` _ \| '_ \
% | | | | | | | | |_) |
% |_|_|_| |_| |_| .__/
% |_|
%
% «limp» (to ".limp")
% Logical implication (a thin, long, vaguely arrow-like, \supset char)
% Note that this "symbol" does not change size in \scriptstyle...
% (find-es "tex" "thin_supset")
% (find-lsrcfile "amslatex/math/amsopn.dtx" "DeclareMathOperator")
% (find-lsrcfile "amslatex/math/amsopn.dtx" "DeclareRobustCommand{\\qopname}")
\def\limpchar{{%
\setlength{\unitlength}{1pt}%
\begin{picture}(6,4)
\put(0,2){\oval(12,4)[r]}
\end{picture}%
}}
% \def\limp{\qopname\relax o{\limpchar}}
\def\limp{\mathrel{\limpchar}}
%\def\limp{\mathbin{\limpchar}}
% _ _ _
% _ __ | |__ ___ _ _ _ __ ___ | |__ ___ | |
% | '_ \| '_ \/ __| | | | '_ ` _ \| '_ \ / _ \| |
% | |_) | |_) \__ \ |_| | | | | | | |_) | (_) | |
% | .__/|_.__/|___/\__, |_| |_| |_|_.__/ \___/|_|
% |_| |___/
%
% «pbsymbol» (to ".pbsymbol")
\def\pbsymbol#1{%
\begin{picture}(#1,#1)
\put(0,0){\line(1,0){#1}}
\put(#1,#1){\line(0,-1){#1}}
\end{picture}}
% _ _ _
% ___ __| |_ ____ ____| |_ __ | |_
% / _ \/ _` | '__\ \/ / _` | '_ \| __|
% | __/ (_| | | > < (_| | | | | |_
% \___|\__,_|_| /_/\_\__,_|_| |_|\__|
%
\ifx\NOEDRXDNT\UNDEFINED
\input edrxdnt.tex % (find-dn4ex "edrxdnt.tex")
\fi
% \input edrxdednat.tex % (find-dn4ex "edrxdednat.tex")
% (find-dn4 "experimental.lua")
% «standardabbrevs» (to ".standardabbrevs")
% «experimental.lua» (to ".experimental.lua")
%L standardabbrevs() -- (find-dn4 "dednat41.lua")
%L require "experimental" -- (find-dn4 "experimental.lua")
\def\ee{\varepsilon}
\def\cded #1{\begin{matrix}\ded {#1}\end{matrix}}
\def\cdiag#1{\begin{matrix}\diag{#1}\end{matrix}}
\def\fcded#1{\fbox{$\cded{#1}$}}
\def\fbded#1{\fbox{$\ded{#1}$}}
% Todo: compare using "matrix" and "vcenter" for cded and cdiag... See:
% http://www.phil.cam.ac.uk/teaching_staff/Smith/LaTeX/ndexamples/proofsty3.html
% I have not tested the \vcenter method much - but here are the definitions,
% if they work they will be renamed \cded and \cdiag and will replace the
% current ones.
\def\vcded #1{\vcenter{\leavevmode$\ded {#1}$}}
\def\vcdiag#1{\vcenter{\leavevmode$\diag{#1}$}}
% (find-dn4file "diagxy.tex" "\\newdir")
% \newdir^{ (}{{ }*!/-.5em/@^{(}}%
% \newdir^{) }{{ }*!/.5em/@^{)}}%
% _ _ __
% ___ __| |_ ____ ____| | ___ / _|___
% / _ \/ _` | '__\ \/ / _` |/ _ \ |_/ __|
% | __/ (_| | | > < (_| | __/ _\__ \
% \___|\__,_|_| /_/\_\__,_|\___|_| |___/
%
\input edrxdefs.tex % (find-dn4ex "edrxdefs.tex")
\def\co{\mathrm{co}}
\def\bsk{\bigskip}
\def\msk{\medskip}
\def\ssk{\smallskip}
% "set of ...", and
% "set of ... such that ..."
\def\sof#1{\{\,#1\,\}}
\def\sst#1#2{\{\,#1\;|\;#2\,\}}
\def\ssst#1#2{\{\,#1\;||\;#2\,\}}
\def\Opens{\mathcal{O}}
\def\compl{{\text{\,compl}}}
\def\interior{{\text{int}}}
\def\sh{\sharp}
\def\fl{\flat}
% (find-angg ".emacs.papers" "stmaryrd")
\def\Dbr#1{\left\llbracket#1\right\rrbracket}
\def\dbr#1{\llbracket#1\rrbracket}
\def\Dbrnat#1{\Dbr{#1}^\natural}
\def\dbrnat#1{\dbr{#1}^\natural}
% Extra:
% (find-dn4ex "edrxslides.tex")
\def\myslide#1#2{{\bf #1}}
\def\tocline#1#2{\par #1 \dotfill #2}
% This is useful for slides:
% \setlength{\parindent}{0em}
% _ _ _
% ___| (_) __| | ___ ___
% / __| | |/ _` |/ _ \/ __|
% \__ \ | | (_| | __/\__ \
% |___/_|_|\__,_|\___||___/
%
% «slides» (to ".slides")
% (find-es "tex" "mytoc")
% (find-LATEX "2005oct20-seminar.tex")
% (find-dn4ex "edrxslides.tex")
\makeatletter
\def\mylosopen#1{\newwrite\tf@mylos\openout\tf@mylos=#1}
\makeatother
\def\addtolos#1{\addtocontents{mylos}{\protect\tocline{#1} {\thepage}}}
\def\myslidelos#1#2{
{\bf #1}\label{#2}%
\addtolos{#1}%
% \addtocontents{mylos}{\protect\tocline {#1} {\thepage}}%
}
\def\makelos#1{\mylosopen{#1}\def\myslide{\myslidelos}}
%\def\ignore#1{}
%\def\nolos{\let\addtolos=\ignore}
%
% Usage:
% % \mylosopen{\jobname.los}
% \mylosopen{tmp.los}
% \def\myslide#1#2{\myslidelos{#1}{#2}}
% %
% {\bf Index of the slides}
% \medskip
% We insert the list of slides here by hand...
% (find-fline "tmp.los")
% (insert-file "tmp.los")
% ...
% _
% ___ ___ | | ___ _ __ ___
% / __/ _ \| |/ _ \| '__/ __|
% | (_| (_) | | (_) | | \__ \
% \___\___/|_|\___/|_| |___/
%
% «colors» (to ".colors")
% (find-es "tex" "bicolorhbox")
\def\blue #1{{\color{blue}#1}}
\def\red #1{{\color{red}#1}}
\def\orange#1{{\color{orange}#1}}
\def\yellow#1{{\color{yellow}#1}}
\def\smashedvrule#1#2#3{\vrule width#1 height#2 depth#3 \kern-#1}
\def\bicolorhbox#1{{%
\setbox0\hbox{#1}%
\yellow{\smashedvrule{\wd0}{\ht0}{0pt}}%
\orange{\smashedvrule{\wd0}{0pt}{\dp0}}%
\box0%
}}
% (find-es "tex" "color")
% (find-lsrcfile "graphics/color.dtx" "\\definecolor{red}")
\def\edrxcolors{
\definecolor{orange}{rgb}{1,.64,0}
}
% Usage:
% \edrxcolors
% \def\bhbox{\bicolorhbox}
% Foobar\bhbox{plic}ploc
% _
% __| | __ _ __ _ ___
% / _` |/ _` |/ _` / __|
% | (_| | (_| | (_| \__ \
% \__,_|\__,_|\__, |___/
% |___/
%
% «dags» (to ".dags")
% (find-es "tex" "dags")
% Some definitions (probably temporary) for
% typesetting the DAGs for (pre)sheaves.
%
% 2011feb13:
\newdimen\mypictureunit
\setbox0=\hbox{\rm0}
\mypictureunit=.085\wd0
\mypictureunit=.084\wd0
%
\def\dagput(#1,#2)#3{\put(#1,#2){\hbox to 0pt{\hss\scriptsize#3\hss}}}
\def\dagpicture(#1,#2)(#3,#4)[#5]#6{{%
%\unitlength=.1ex%
%\setbox0\hbox{x}\unitlength=.1\wd0%
%\setbox0\hbox{x}\unitlength=.095\wd0%
%\setbox0\hbox{x}\unitlength=.090\wd0%
\unitlength=\mypictureunit
\lower #5\unitlength\hbox{%
\begin{picture}(#1,#2)(#3,#4)
#6
\end{picture}%
}}}
\def\dagHouse#1#2#3#4#5{%
\dagpicture(20,36)(-10,-24)[12]{
\dagput( 0, 0){$#1$} % top
\dagput(-6,-12){$#2$} % second line, left
\dagput( 6,-12){$#3$} % second line, right
\dagput(-6,-24){$#4$} % third line, left
\dagput( 6,-24){$#5$} % third line, right
}}
\def\dagVee#1#2#3{%
\dagpicture(20,24)(-10,-12)[0]{
\dagput(-6, 0){$#1$} % top left
\dagput( 6, 0){$#2$} % top right
\dagput( 0,-12){$#3$} % bottom
}}
\def\dagPyr#1#2#3{%
\dagpicture(20,24)(-10,-12)[0]{
\dagput( 0, 0){$#1$} % top
\dagput(-6,-12){$#2$} % bottom left
\dagput( 6,-12){$#3$} % bottom right
}}
\def\dagKite#1#2#3#4#5{%
\dagpicture(20,48)(-10,-36)[16]{
\dagput( 0, 0){$#1$} % top
\dagput(-6,-12){$#2$} % second line, left
\dagput( 6,-12){$#3$} % second line, right
\dagput( 0,-24){$#4$} % third line
\dagput( 0,-36){$#5$} % bottom
}}
\def\dagSqr#1#2#3#4{%
\dagpicture(20,24)(-10,-12)[0]{
\dagput(-6, 0){$#1$} % top left
\dagput( 6, 0){$#2$} % top right
\dagput(-6,-12){$#3$} % bottom left
\dagput( 6,-12){$#4$} % bottom right
}}
\def\dagTwo#1#2{%
\dagpicture(8,24)(-4,-12)[0]{
\dagput( 0, 0){$#1$} % top
\dagput( 0,-12){$#2$} % bottom
}}
\def\dagThree#1#2#3{%
\dagpicture(8,36)(-4,-24)[6]{
\dagput( 0, 0){$#1$} % top
\dagput( 0,-12){$#2$} % middle
\dagput( 0,-24){$#3$} % bottom
}}
\def\dagTee#1#2#3#4{%
\dagpicture(32,24)(-16,-12)[0]{
\dagput(-12, 0){$#1$} % top left
\dagput( 0, 0){$#2$} % top middle
\dagput( 12, 0){$#3$} % top right
\dagput( 0,-12){$#4$} % bottom
}}
\def\dagSeven#1#2#3#4#5#6#7{%
\dagpicture(44,36)(-22,-24)[6]{
\dagput( 0, 0){$#1$} % top
\dagput( -9,-12){$#2$} % middle left
\dagput( 9,-12){$#3$} % middle right
\dagput(-18,-24){$#4$} % bottom left
\dagput( -6,-24){$#5$} % bottom middle left
\dagput( 6,-24){$#6$} % bottom middle right
\dagput( 18,-24){$#7$} % bottom right
}}
% Reason for the name "Reh":
% (find-einsert '(638 1360))
% 638 is an "r with fishhook" (IPA),
% 1360 is the "(capital) Armenian Reh".
\def\dagReh#1#2#3#4{\dagHouse{#1}{#2}{#3}{#4}{}}
% For my notes on sheaves and presheaves
\def\dbul{{\bullet\bullet}} % supersaturated cover
\def\bulm{{\bullet-}} % minimal saturated cover
\def\bul{\bullet} % saturated cover
\def\bol{\circ} % cover
\def\dtri{{\blacktriangle\blacktriangle}} % supersaturated subcover
\def\tri{\blacktriangle} % saturated subcover
\def\tro{\vartriangle} % subcover
\def\calU{{\mathcal{U}}}
\def\calV{{\mathcal{V}}}
% «savebox» (to ".savebox")
% These are mainly for nested diagrams
% (find-LATEX "2008graphs.tex" "ess-and-star")
% (find-LATEX "2008graphs.tex" "minimal-dag")
% (find-LATEX "2008graphs.tex" "minimal-dag" "A .tex= \\usebox{\\myboxa}")
% (find-kopkadaly4page (+ 12 87) "\\newsavebox{\\boxname}")
% (find-kopkadaly4text "\\newsavebox{\\boxname}")
\newsavebox{\myboxa}
\newsavebox{\myboxb}
\newsavebox{\myboxc}
\newsavebox{\myboxd}
\newsavebox{\myboxe}
\newsavebox{\myboxf}
\newsavebox{\myboxg}
\newsavebox{\myboxh}
% «diagprep» (to ".diagprep")
% (find-dn4ex "edrxdnt.tex" "defdiag")
% Experimental, 2010mar25
%\def\defdiagprep#1#2{\expandafter\def\csname diagprep-#1\endcsname{#2}}
%\def\ifdiagprepundefined#1{\expandafter\ifx\csname diagprep-#1\endcsname\relax}
%\def\diagprep#1{\ifdiagprepundefined{#1}
% \errmessage{UNDEFINED DIAGPREP: #1}
% \else
% \csname diagprep-#1\endcsname
% \fi
%}
%\def\diagwithboxes#1{\diagprep{#1}\diag{#1}}
% These are mainly for putting multi-line text in nodes in diagrams
\def\textc#1{\begin{tabular}{c}#1\end{tabular}}
\def\textl#1{\begin{tabular}{l}#1\end{tabular}}
%:*\s[*\dncdisplay[*
\def\dncdisplay[#1|#2]{\begin{pmatrix} #2 \\ #1 \end{pmatrix}}
\def\ov{\overline}
% «crossover» (to ".crossover")
% (find-es "tex" "crossover")
\def\crossover#1#2#3{%
\setbox0\hbox{#1}%
\copy0%
\hskip -\wd0%
\setbox1\hbox{\vrule height#2 width\wd0 depth0pt}%
\raise#3\copy1\relax}
\def\mycrossover#1{\crossover{#1}{0.25pt}{1.75pt}}
\def\emp{\emptyset}
\def\sm#1{\begin{smallmatrix}#1\end{smallmatrix}}
\def\psm#1{\left(\begin{smallmatrix}#1\end{smallmatrix}\right)}
% Local Variables:
% coding: raw-text-unix
% ee-delimiter-percent: "\n%*\n"
% ee-anchor-format: "«%s»"
% End: