小さな黒い四角を二項演算子としてタイプセットするにはどうすればよいでしょうか?

小さな黒い四角を二項演算子としてタイプセットするにはどうすればよいでしょうか?

これはこの SE への最初の投稿なので、フォーマットが悪かったらお詫びします。

本質的には、アレン・ハッチャーの次の定義にある小さな黒い記号を再現しようとしている。代数的位相幾何学:

ここに画像の説明を入力してください

この本は彼のウェブサイトから無料でアクセスすることもできます(この画像は 26 ページからのものです。)

私はfとgの間にある小さな黒い四角をどのようにタイプセットするか考えています。私は前文で次のように試しました。

\renewcommand{\bullet}{\tiny$\blacksquare$}

しかし、生成された四角い箇条書きは不自然に見え、バイナリ演算子のようには見えません。つまり、中央に配置されておらず、f と g(s) の間隔が等しくありません。

この特定のシンボルを作成する方法について、何か提案はありますか?

答え1

これは実際には正方形ではなく、\cdot写真で使用されている Lucida ファミリーの形状です。

\documentclass{article}
\usepackage{lucidabr}
\begin{document}
$f \cdot g$
\end{document}

Lucidaは商用フォントで、以下から購入できます。タグ


また、 を使用してシンボルを偽造することもできます\rule

\documentclass{article}
\renewcommand\bullet{%
  \mathbin{\mskip1mu
    \mathchoice
      {\squarebullet{.25ex}{.25ex}}%
      {\squarebullet{.25ex}{.25ex}}%
      {\squarebullet{.18ex}{.18ex}}%
      {\squarebullet{.15ex}{.15ex}}
    \mskip1mu}
}
\newcommand\squarebullet[2]{\vcenter{\hbox{\rule{#1}{#2}}}}
\begin{document}
$f \cdot g_{f \cdot g_{f \cdot g}}$

$f \bullet g_{f \bullet g_{f \bullet g}}$
\end{document}

ここに画像の説明を入力してください

答え2

このシンボルはmathabxフォント パッケージに存在します。パッケージをロードせずにこのシンボルを使用する方法は次のとおりです。

\documentclass{article}
\DeclareFontFamily{U}{mathb}{\hyphenchar\font45}
\DeclareFontShape{U}{mathb}{m}{n}%
{<-6> mathb5 %
 <6-7> mathb6
 <7-8> mathb7 %
 <8-9> mathb8 %
 <9-10> mathb9 %
 <10-12> mathb10 %
 <12-> mathb12 }%
 {}
\DeclareSymbolFont{mathb}{U}{mathb}{m}{n}
\DeclareMathSymbol{\sqbullet}{\mathbin}{mathb}{"0D}

\begin{document}

\[ f \sqbullet g\]%

\end{document} 

ここに画像の説明を入力してください

答え3

黒い点のサイズを決定します。ここでは、小さなサイドベアリングを持つ、周期 (の境界ボックス) の 2 倍のサイズになります。

\documentclass{article}
\usepackage{amsmath}

\makeatletter
\newcommand{\pp}{}% check it's not defined
\DeclareRobustCommand{\pp}{\mathbin{\mathpalette\pp@\relax}}
\newcommand\pp@[2]{%
  \mspace{0.5mu}%
  \vcenter{\hbox{\sbox\z@{$#1.$}\rule{2\ht\z@}{2\ht\z@}}}%
  \mspace{0.5mu}%
}
\makeatother

\begin{document}

$f\pp g$

$\scriptstyle f\pp g$

\end{document}

ここに画像の説明を入力してください

答え4

このグリフは\smblksquareunicode-math(お勧め)やstixなど、いくつかのパッケージで として利用できますstix2。Unicode コードポイントは ▪ (U+25AA) です。スペース を含む演算子を定義するだけです\mathbin

\documentclass[varwidth]{standalone}
\usepackage{unicode-math}

\newcommand\csquare{\mathbin{\smblksquare}}

\begin{document}
\( f \csquare g \)
\end{document}

サンプル

\vysmblksquare類似の記号はいくつかあり、小さいバージョン (⬝) や大きいバージョン (◼)などがあります\mdlblksquare。例:

\documentclass[varwidth]{standalone}
\usepackage{unicode-math}

\defaultfontfeatures{ Scale = MatchLowercase, Ligatures = TeX }
\setmainfont{STIX Two Text}[Scale = 1.0]
\setmathfont[StylisticSet = 2]{STIX Two Math}

\newcommand\csquare{\mathbin{\vysmblksquare}}

\begin{document}
\( f \csquare g \)
\end{document}

STIX Two フォントサンプル

この記号がない、または見苦しい記号がある数学フォントを使用する場合は、任意の他のフォントの四角形を、たとえば に置き換えることができます\setmathfont[range=\smblksquare]{Latin Modern Math}

これが実際に Lucida のシンボルである場合は、代わりに をの中にラップするか、 で囲むことによって\cdot定義できます。\csquare\mbox\mathbin\DeclareMathSymbol

関連情報