9

I am trying to write one set of equations implying the next, inline with text. What I would like to do is something like the following:

\documentclass{article}
\begin{document}
And so, 
\(\left. \begin{array}[t]{l}
a \\
b \\ 
c
\end{array} \right\}
\Rightarrow \left. \begin{array}[t]{l}
d \\
e \\ 
f
\end{array} \right\}\)
\end{document}

But instead of producing the desired result (bottom) it produces the top one.

Is there a different symbol I can use other than \}?

a set of equations implying the next

6
  • 4
    Ow, non symmetrical braces! Looks ugly, in my opinion, of course.
    – Sigur
    Feb 2, 2015 at 17:25
  • My concern with symmetrical braces is that since it is inline, the \Rightarrow will not have the same baseline as the rest of the paragraph. Feb 2, 2015 at 18:20
  • Neither of them mean anything to me. What are you trying to convey with this notation?
    – percusse
    Feb 2, 2015 at 18:28
  • I'm trying to demo the computation of reducing a system of equations. i.imgur.com/fCbnd4p.png Feb 2, 2015 at 18:32
  • 1
    Related: How can I create a new extensible symbol?
    – Werner
    Feb 2, 2015 at 18:33

6 Answers 6

4

It's fiddly, but it works. Using abraces you can align the entire construction vertically and then rotate/move it into place:

enter image description here

\documentclass{article}
\usepackage{abraces,graphicx}
\newcommand{\mrot}[1]{\rotatebox{90}{$#1\mathstrut$}}
\begin{document}
And so, 
\raisebox{.8\baselineskip}{\rotatebox{-90}{$\setlength{\arraycolsep}{.5\arraycolsep}
  \begin{array}{@{}c@{}}
   \aunderbrace[lD1r]{\begin{array}{rrr}
       \mrot{d} & \mrot{e} & \mrot{f}
     \end{array}} \\
   \mrot{\Rightarrow} \hspace{2.3\normalbaselineskip} \\
   \aoverbrace[LU1R]{\begin{array}{rrr}
       \mrot{a} & \mrot{b} & \mrot{c}
     \end{array}}
  \end{array}$}}
\end{document}
7

I don't like the asymmetrical braces, but this is an opportunity to use TikZ:

enter image description here

The code:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing,matrix,positioning,calc}

\tikzset{
mybrace/.style={
  decorate,
  decoration={brace,aspect=#1},
  line width=1pt
  }
}

\begin{document}

And so,
\(
\left. 
\begin{array}{l}
a \\
b \\ 
c
\end{array} 
\right\}
\Rightarrow 
\left. 
\begin{array}{l}
d \\
e \\ 
f
\end{array} 
\right\}
\)

And so,
\begin{tikzpicture}[baseline=2.5ex,every node/.style={text depth=0.2ex,text height=1.3ex}]
\matrix[matrix of math nodes]
(mat1)
{
a \\
b \\ 
c \\
};
\matrix[matrix of math nodes,right=0.8cm of mat1]
(mat2)
{
d \\
e \\ 
f \\
};
\node[yshift=-0.8ex]
  at ( $ (mat1-1-1.east)!0.5!(mat2-1-1.west) $ )
  {$\Rightarrow$};
\foreach \Valor in {1,2}
  \draw[mybrace=0.25] 
    (mat\Valor-1-1.north east) -- (mat\Valor-1-1.north east|-mat\Valor-3-1.south east);
\end{tikzpicture} 

\end{document}
5

I wouldn't use asymetrical brace, but just offset the brace with the array, which delarray is designed to make easy:

enter image description here

\documentclass{article}
\usepackage{delarray}
\begin{document}
And so, 
\(\begin{array}[t].{l}\}
a \\
b \\ 
c
\end{array}
\begin{array}[t]{@{}c@{}}\\{}\Rightarrow {}\\{}\end{array}
\begin{array}[t].{l}\}
d \\
e \\ 
f
\end{array}\)
\end{document}
3

Quite hackish, but might be a start for people who know what they are doing (I just added \kern wherever I needed to make manual adjustments).

\documentclass{scrartcl}

\usepackage{mathtools,graphicx}

\makeatletter
\def\overspecialparenthesis#1{\mathop{\vbox{\ialign{##\crcr
   \downspecialparenthfill\crcr\noalign{\nointerlineskip}
   $\hfil\displaystyle{#1}\hfil$\crcr}}}\limits}
\def\downspecialparenthfill{$\m@th\braceld\braceru\bracelu\leaders\vrule\hfill\bracerd$}
\newcommand\specialbrace[1]
  {\rotatebox[origin=c]{270}{$\kern.3ex\overspecialparenthesis{\kern.6ex
   \m@th\rotatebox[origin=c]{90}{$\m@th#1$}}$}}
\makeatother


\begin{document}

And so, 
\( \specialbrace{\begin{array}[t]{l}
a \\
b \\ 
c
\end{array}}
\implies \specialbrace{\begin{array}[t]{l}
d \\
e \\ 
f
\end{array}} \)

\end{document}

enter image description here

PS: Of course this adds space between the last line and the rest of the paragraph (the part “above” the “middle” of the brace is too big).

2

I am sure you can get away with

\documentclass{article}
\begin{document}
And so, $(a,b,c)\Rightarrow (d,e,f)$
\end{document}
1
  • 3
    I'm still sure :)
    – percusse
    Feb 2, 2015 at 18:34
1

Without asymmetry:

\documentclass{article}
\usepackage{mathtools}
\newcommand*{\bunch}[3]{\left.\begin{matrix}{#1} \\ {#2} \\ {#3} \end{matrix}\right\}}
\begin{document}
\[
\bunch{a}{b}{c} \implies \bunch{d}{e}{f}
\]
\end{document}

enter image description here

2
  • 1
    Why the braces around the parameters? Feb 2, 2015 at 17:51
  • The problem is the aliment. The OP wants to use it inline.
    – Sigur
    Feb 2, 2015 at 17:51

You must log in to answer this question.

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