ユニオンの昇順/交差点の降順の記号
Aug 19 2020
紙や黒板に書くとき、私は通常\bigcup
、右のプロングの端に上向きの矢印を付けて、上向きの和集合を示します。同様\bigcap
に、右プロングの端に下向きの矢印を付けて、下向きの交差点を示します。これらの記号は標準パッケージに含まれていますか?そうでない場合、どうすればそれらを定義できますか?
MWE:
\documentclass{article}
\begin{document}
\[
(0,1)=\bigcup_n \left[\frac1n, 1-\frac1n\right]
\]
\[
\{0\}=\bigcap_n \left(-\frac1n,\frac1n\right)
\]
\end{document}
回答
6 StevenB.Segletes Aug 19 2020 at 19:12
\documentclass{article}
\usepackage{stackengine,amsmath}
\stackMath
\DeclareMathOperator*\dcap{{\stackinset{r}{-1.02ex}{c}{-1.9pt}{\downarrow}
{\bigcap}\mkern2mu}}
\DeclareMathOperator*\acup{{\stackinset{r}{-1.02ex}{c}{1.9pt}{\uparrow}
{\bigcup}\mkern2mu}}
\begin{document}
\[
(0,1)=\acup_n \left[\frac1n, 1-\frac1n\right]
\]
\[
\{0\}=\dcap_n \left(-\frac1n,\frac1n\right)
\]
\end{document}

で常に使用している場合は\displaystyle
、次のように適応できます。
\documentclass{article}
\usepackage{stackengine,amsmath}
\stackMath
\DeclareMathOperator*\dcap{{\stackinset{r}{-1ex}{c}{-3.1pt}{\downarrow}
{\displaystyle\bigcap}\mkern2mu}}
\DeclareMathOperator*\acup{{\stackinset{r}{-1ex}{c}{3.1pt}{\uparrow}
{\displaystyle\bigcup}\mkern2mu}}
\begin{document}
\[
(0,1)=\acup_n \left[\frac1n, 1-\frac1n\right]
\]
\[
\{0\}=\dcap_n \left(-\frac1n,\frac1n\right)
\]
\end{document}

3 egreg Aug 19 2020 at 22:58
正直なところ、シンボルは道路標識のUターンのように見えます。
\documentclass{article}
\usepackage{amsmath}
\makeatletter
\DeclareRobustCommand{\ubigcup}{\DOTSB\mathop{\,\ubigcup@\,}\slimits@}
\DeclareRobustCommand{\dbigcap}{\DOTSB\mathop{\,\dbigcap@\,}\slimits@}
\newcommand{\ubigcup@}{\mathpalette\ubigcup@@\relax}
\newcommand{\ubigcup@@}[2]{%
\begingroup
\sbox\z@{$\m@th#1\bigcup$}%
\sbox\tw@{$\m@th#1\uparrow$}%
\copy\z@
\mkern-6.3mu\ifx#1\scriptscriptstyle\mkern0.3mu\fi
\dimen@=\dimexpr\ht\z@-\ht\tw@
\ifx#1\displaystyle\else
\ifx#1\scriptscriptstyle\advance\dimen@ 0.5pt\else
\advance\dimen@ 1pt
\fi\fi
\raisebox{\dimen@}[0pt][0pt]{\rlap{\copy\tw@}}%
\mkern6.3mu\ifx#1\scriptscriptstyle\mkern-0.3mu\fi
\endgroup
}
\newcommand{\dbigcap@}{\mathpalette\dbigcap@@\relax}
\newcommand{\dbigcap@@}[2]{%
\begingroup
\sbox\z@{$\m@th#1\bigcap$}%
\sbox\tw@{$\m@th#1\downarrow$}%
\copy\z@
\mkern-6.3mu\ifx#1\scriptscriptstyle\mkern0.3mu\fi
\dimen@=\dimexpr\dp\z@-\dp\tw@
\ifx#1\displaystyle\else
\ifx#1\scriptscriptstyle\advance\dimen@ 0.5pt\else
\advance\dimen@ 1pt
\fi\fi
\raisebox{-\dimen@}[0pt][0pt]{\rlap{\copy\tw@}}%
\mkern6.3mu\ifx#1\scriptscriptstyle\mkern-0.3mu\fi
\endgroup
}
\makeatother
\begin{document}
$\displaystyle\ubigcup_{n=1}^{\infty} A_n$
$\displaystyle\bigcup_{n=1}^{\infty} A_n$
$\displaystyle\bigcup_{n=1}^{\infty} A_n$
\bigskip
$\textstyle\ubigcup_{n=1}^{\infty} A_n$
$\scriptstyle\ubigcup_{n=1}^{\infty} A_n$
$\scriptscriptstyle\ubigcup_{n=1}^{\infty} A_n$
\bigskip
$\displaystyle\dbigcap_{n=1}^{\infty} B_n$
$\displaystyle\bigcap_{n=1}^{\infty} B_n$
$\displaystyle\bigcap_{n=1}^{\infty} B_n$
\bigskip
$\textstyle\dbigcap_{n=1}^{\infty} B_n$
$\scriptstyle\dbigcap_{n=1}^{\infty} B_n$
$\scriptscriptstyle\dbigcap_{n=1}^{\infty} B_n$
\end{document}
