6

I'm trying to draw a diagram my teacher drew on the blackboard to summarize divisibility relationships and I just can't get it right. Here is my best attempt:

\documentclass[a4paper]{report}
\usepackage[all]{xy}
\usepackage{amsmath,amsfonts,amssymb,graphicx,color}

\begin{document}
\begin{gather*}
|S^G|=|G:\operatorname{Stab}_G(S)|=|G:N_G(S)|. \\
\xymatrix{
G \ar@{{}*\composite{\hbox{\scalebox{2}{$\underset{\Big\{}{\scriptscriptstyle\text{\color{white}A}}$}}}}@<-3ex>[dd]_{p'\quad}\ar@{{}*\composite{\hbox{\scalebox{1}[2]{\}}}}{}}@<1.5ex>[d]^{p'}\ar@{-}[d] \\
N_G(S) \ar@{-}[d] \\
S \ar@{-}[d] \\
1
}
\end{gather*}
\end{document}

Result:

enter image description here

OK, there is an extra line in the code, and I should use a single equation for an isolated matrix. Anyways, the problem is obvious: those long braces just won't properly extend. I need the big brace to extend from close to the G to close to the S. I tried lots of variants, but the brace invariably starts either far from the G or above (!!) the G, and always ends close to the N_G(S). The little brace is also somewhat problematic, but I guess I can leave it as is, and besides when (and if) I fix the big one the little one will probably be easy to fix. So how do I fix that big brace?

3
  • Looks like a diagram to be made with tikz-cd.
    – Sigur
    Commented Jul 19, 2015 at 18:13
  • If there is really no alternative I'll learn how to use tikz-cd and make that diagram with it. But my time might not be much. I have to deal with the notes of a teacher who didn't prepare his lessons (I mean the exercise teacher for the course whose theory teacher drew the diagram), and wading through those might take even longer than I fear. For example one of those unprepred lesson took me some 8+h to complete. So I really don't know what to expect from that and I'd rather avoid learning to use a new package from scratch. But then if there really is no alternative...
    – MickG
    Commented Jul 19, 2015 at 18:52
  • see an option below.
    – Sigur
    Commented Jul 19, 2015 at 19:23

3 Answers 3

2

Here is a tikz solution. The baces are drawn using the decorations library.

enter image description here

\documentclass[preview]{standalone}
\usepackage{amsmath}

\usepackage{tikz}
\usetikzlibrary{positioning}
\usetikzlibrary{decorations.pathreplacing}

\begin{document}

\begin{gather*}
|S^G|=|G:\operatorname{Stab}_G(S)|=|G:N_G(S)|.
\end{gather*}

\begin{center}
\begin{tikzpicture}[
    % brace style
    bl/.style={decorate,decoration={brace,amplitude=10pt,raise=4pt,mirror},very thick},
    br/.style={decorate,decoration={brace,amplitude=7pt,raise=4pt}}]

    % spacing between the nodes and the braces
    \def\s{13pt}
    \def\t{19pt}

    % nodes
    \node (n1) at (0,0)      {$G$};
    \node [below=of n1] (n2) {$N_G(S)$};
    \node [below=of n2] (n3) {$S$};
    \node [below=of n3] (n4) {$1$};

    % arrows
    \path[->]
        (n1) edge node {} (n2)
        (n2) edge node {} (n3)
        (n3) edge node {} (n4);

    % left brace
    \draw [bl] ([xshift=-\s]n1.center) -- ([xshift=-\s]n3.center)
        node [black,midway,xshift=-\t] {\footnotesize$p'$};

    % right brace
    \draw [br] ([xshift=\s]n1.center) -- ([xshift=\s]n2.center)
        node [black,midway,xshift=\t] {\footnotesize$p'$};

\end{tikzpicture}

\end{center}

\end{document}
1
  • I'll keep in mind that I can mimic an xy diagram with tikz nodes so that if I meet a similar case I switch to tikz. And sooner or later, I'll try my luck with tikz-cd too. But probably not before next year :).
    – MickG
    Commented Jul 19, 2015 at 20:37
3

If you find time and appetite for changing to , this would look like the following (most stuff taken from @sergej)

% arara: pdflatex

\documentclass{article}
\usepackage{tikz-cd}
\usetikzlibrary{decorations.pathreplacing, positioning}
\usepackage{mathtools}

\begin{document}
\begin{gather*}
|S^G|=|G:\operatorname{Stab}_G(S)|=|G:N_G(S)|\\
\begin{tikzcd}[every arrow/.append style=dash]
G 
\ar[thick, start anchor=center, end anchor=center, xshift=-1.7em, decorate,decoration={brace,amplitude=8pt,mirror}]{dd}[left=8pt]{p}
\ar[thick, start anchor=center, end anchor=center, xshift=1.7em, decorate,decoration={brace,amplitude=4pt}]{d}[right= 4pt]{p}
\ar{d} \\
N_G(S) \ar{d} \\
S \ar{d} \\
1
\end{tikzcd}
\end{gather*}
\end{document}

enter image description here

6
  • 1
    p' in fact :P. Seems pretty straightforward. Maybe it's just the idea of using a new package that's putting me off. I've adopted the tikz solution because I'm already using tikz, or at least loading it, and I have some experience with it. Maybe one day I'll feel like taking a break and will tackle the tikz-cd documentation and finally doff xypic. Until then, +1 :).
    – MickG
    Commented Jul 19, 2015 at 20:44
  • @MickG Yes, noted that a second after uploading the image... Doesn't matter, too lazy :-) Those labels should get a little bit more distance I guess and I believe, positioning is not needed... but I leave it as it is, as you got the idea. tikz-cd loads TikZ internally so there is not much more overhead.
    – LaRiFaRi
    Commented Jul 19, 2015 at 20:46
  • Indeed it doesn't matter :). What does "arara" mean?
    – MickG
    Commented Jul 19, 2015 at 21:01
  • Oh. arara. Much like TeXShop's %TEX TS-Program = pdflatex (or whatever it is precisely).
    – MickG
    Commented Jul 19, 2015 at 21:24
  • @MickG Yes, this arara. Very handy tool. I always leave the directives in my MWE as they show quite understandable which compilation routine is needed (has been used).
    – LaRiFaRi
    Commented Jul 20, 2015 at 7:16
2

Is this enough to you?

\[
\xymatrix{
  G      \ar@{-}[d]    \ar@{-} `l[d] `[dd]_{p'} [dd]  \\
  N_G(S) \ar@{-}[d] \\
  S      \ar@{-}[d] \\
  1
}
\qquad
\xymatrix@C=1ex{% 1ex = space between collumns
 & G      \ar@{-}[d]   \ar@{-} `l/0pt[ld] `[dd]_{p'} [dd] \ar@{-} `r[dr] `[d]^{p'} [d] & \\
 & N_G(S) \ar@{-}[d] & \\
 & S      \ar@{-}[d] \\
 & 1
}
\]

enter image description here

2
  • I'm not sure if it's OK to switch from braces to brackets or pseudo-parentheses. If it is, then this is good. But the right brace is missing :).
    – MickG
    Commented Jul 19, 2015 at 20:30
  • 1
    I accepted the tikz solution because of the unsureness. Upvoted this answer though.
    – MickG
    Commented Jul 19, 2015 at 20:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .