縦棒付きの不等号(≠)

縦棒付きの不等号(≠)

\neq斜めのバーの代わりに縦のバーで「しかし」を表すことは可能ですか? AMS のような不等式演算子には\gvertneqq、この種の「等しくない」を表すものがありますが、他の記号と混在させることはできません。

\documentclass[a5paper]{article}
\usepackage{amssymb}
\usepackage{amsmath}
\begin{document}
\begin{align*}
a&\gvertneqq b\\
C&\neq \varnothing
\end{align*}
\end{document}

上記コードの結果

したがって、基本的に私が欲しいのは、\gvertneqq上記の > の下の独立した記号です。特に、2 行目のスラッシュの傾斜が異なるのが気に入らないし、「≠∅」は非常に一般的な組み合わせであるためです。

答え1

縦線付きの等号

垂直線は|私の好みとしては少し高いです。 の次の定義は、 の合計\vneqの高さに一致するように垂直線の合計の高さを減らします\neq。垂直の高さを変更しても、水平方向の線の太さは変わりません。

  • \vneqxscale垂直線の最終的な幅と高さは、マクロとを再定義することで微調整できます\vneqyscale。デフォルトは です1
  • \mathpaletteシンボルのサイズを自動的に変更できます。

サンプルファイル:

\documentclass{article}

\usepackage{amssymb}% \varnothing

\usepackage{graphicx}% \resizebox
\makeatletter
\newcommand*{\vneq}{%
  \mathrel{%
    \mathpalette\@vneq{=}%
  }%
}
\newcommand*{\@vneq}[2]{%
  % #1: math style (\displaystyle, \textstyle, ...)
  % #2: symbol (=, ...)
  \sbox0{\raisebox{\depth}{$#1\neq$}}%
  \sbox2{\raisebox{\depth}{$#1|\m@th$}}%
  \ifdim\ht2>\ht0 %
    \sbox2{\resizebox{\vneqxscale\width}{\vneqyscale\ht0}{\unhbox2}}%
  \fi
  \sbox2{$\m@th#1\vcenter{\copy2}$}%
  \ooalign{%
    \hfil\phantom{\copy2}\hfil\cr
    \hfil$#1#2\m@th$\hfil\cr
    \hfil\copy2\hfil\cr
  }%
}
\newcommand*{\vneqxscale}{1}
\newcommand*{\vneqyscale}{1}
\makeatother

\begin{document}
\[
  % Comparison \neq vs. vneq
  \varnothing \neq \emptyset \vneq \varnothing \\
\] 
\[ 
  % Check sizes:
  \vneq^{\vneq^{\vneq}} \\
\] 
\[ 
  % Bounding box checks:
  \setlength{\fboxsep}{0pt}
  \setlength{\fboxrule}{.1pt}
  \fbox{$\neq$}\,\fbox{$\vneq$}\,\fbox{$|$}
\]
\end{document}

結果

高さはさらに低くすることができます。

\renewcommand*{\vneqyscale}{.8}

結果/.8

結果mathabx:

数学abx

結果txfonts:

txフォント

結果MnSymbol:

Mnシンボル

ここでは垂直線が太すぎるため、水平方向のサイズ変更を縮小する必要があります。

\renewcommand*{\vneqxscale}{.67}

MnSymbolおよび\vneqxscale= の結果.67:

Mnシンボル/.67

代替案varnothing

を変更する代わりに、斜めの垂直線の傾きに一致するように、を使用して\neq空集合記号\varnothingを構築することができます。ただし、は小さすぎ、大きすぎます。したがって、でおよびを提供するに対してこのメ​​ソッドが示されています。\not\circ\bigcirctxfonts\medcircMnSymbol\medcircle

\documentclass{article}

%\usepackage{txfonts}
%\newcommand*{\varemptysetcircle}{\medcirc}

\usepackage{MnSymbol}
\newcommand*{\varemptysetcircle}{\medcircle}

\makeatletter
\newcommand*{\varemptyset}{%
  {% mathord
    \vphantom{\not=}% correct height and depth of the final symbol
    \mathpalette\@varemptyset\varemptysetcircle
  }%
}
\newcommand*{\@varemptyset}[2]{%
  % #1: math style (\displaystyle, \textstyle, ...)
  % #2: circle
  \ooalign{%
    \hfil$\m@th#1\not\hphantomeq$\hfil\cr
    \hfil$\m@th#1#2$\hfil\cr
  }%
}
% \not can be redefined to take an argument
\newcommand*{\hphantomeq}{%
  \mathrel{\hphantom{=}}%
}
\makeatother

\usepackage{color}

\begin{document}
\[
  \not=\; \color{blue}\neq \varemptyset\; \color{black}\varnothing
\]
\end{document}

結果txfonts:

txフォント

結果MnSymbol:

Mnシンボル

答え2

はい:

以下のコードのスクリーンショット

\documentclass[a5paper]{article}
\usepackage{amssymb}
\usepackage{amsmath}
\newcommand\vneq{\mathrel{\ooalign{$=$\cr\hidewidth$|$\hidewidth\cr}}}
\begin{document}
\begin{align*}
a&\gvertneqq b\\
C&\neq \varnothing \\
d&\vneq f
\end{align*}
\end{document}

のコマンドの背後にある動機については\vneq、egregの優れたチュートリアルをお読みください\ooalign\subseteq+\circを単一の記号として(「開いたサブセット」)

答え3

最も単純な解決策は

\usepackage{mathabx}
\changenotsign

しかし、これは数学記号の大部分を変更することを意味し、私の意見では、 が提供する記号の一部はmathabx設計が悪いため、望ましくありません。

標準的なツールを使った解決策は

\documentclass{article}

\renewcommand\neq{\mathrel{\vphantom{|}\mathpalette\xsneq\relax}}
\newcommand\xsneq[2]{%
  \ooalign{\hidewidth$#1|$\hidewidth\cr$#1=$\cr}%
}

\begin{document}
$a\neq b$
\end{document}

通常の形状に\renewcommand戻すには、そのコードを削除するだけで済むため、これを使用しました。\neq

を使用すると\mathpalette、作成された記号は下付き文字または上付き文字で小さくなります。

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

関連情報