Sinal diferente (≠) com uma barra vertical

Sinal diferente (≠) com uma barra vertical

É possível conseguir um \neqmas com barra vertical em vez de inclinada? Existem operadores de desigualdade como o AMS \gvertneqqque apresentam este tipo de “diferente”, mas não sem misturá-lo com outros sinais.

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

resultado do código acima

Então, o que eu basicamente gostaria de ter é o símbolo isolado sob > acima \gvertneqq. Principalmente porque não gosto das diferentes inclinações das barras na segunda linha e "≠∅" é uma combinação bastante comum.

Responder1

Sinal de igual com linha vertical

A linha vertical |é um pouco alta para o meu gosto. A definição a seguir \vneqdiminui a altura total da linha vertical para corresponder à altura total de \neq. O redimensionamento da altura vertical não alterará a espessura da linha na direção horizontal.

  • A largura e altura finais da linha vertical podem ser ajustadas redefinindo macros \vneqxscalee arquivos \vneqyscale. O padrão é 1.
  • \mathpalettepermite que o símbolo seja redimensionado automaticamente.

Arquivo de exemplo:

\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}

Resultado

A altura pode ser ainda mais reduzida, por exemplo

\renewcommand*{\vneqyscale}{.8}

Resultado/.8

Resultado para mathabx:

matemática

Resultado para txfonts:

txfonts

Resultado para MnSymbol:

MnSímbolo

Aqui a linha vertical é muito grossa e o redimensionamento horizontal precisa ser reduzido:

\renewcommand*{\vneqxscale}{.67}

Resultado para MnSymbole \vneqxscale= .67:

MnSímbolo/.67

Alternativa paravarnothing

Em vez de mudar \neq, o símbolo do conjunto vazio \varnothingpoderia ser construído usando \nota inclinação das linhas verticais inclinadas. No entanto, \circé muito pequeno e \bigcircmuito grande. Portanto, este método é mostrado para txfontsfornecer \medcirce MnSymbolcom \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}

Resultado para txfonts:

txfonts

Resultado para MnSymbol:

MnSímbolo

Responder2

Sim:

captura de tela do código abaixo

\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}

Para uma motivação por trás dos comandos em \vneq, leia o excelente tutorial do egreg \ooalignem\subseteq+ \circcomo um único símbolo (“subconjunto aberto”)

Responder3

Uma solução simplista seria

\usepackage{mathabx}
\changenotsign

mas isso significaria alterar grande parte dos símbolos matemáticos, o que não é desejável porque, na minha opinião, alguns dos símbolos fornecidos por mathabxestão mal desenhados.

Uma solução com ferramentas padrão é

\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}

Usei \renewcommandporque será simplesmente uma questão de remover esse código para voltar \neqao seu formato normal.

Ao usar \mathpalette, o símbolo criado ficará menor em subscritos ou sobrescritos.

insira a descrição da imagem aqui

informação relacionada