How to typeset appropriate "does not entail" symbol?

The mathabx fonts define a plethora of such symbols. Here is a code to use them without loading the whole font:

\documentclass[11pt]{article}%[14pt]
 \usepackage{amsmath}

\DeclareFontFamily{U}{matha}{\hyphenchar\font45}
\DeclareFontShape{U}{matha}{m}{n}{%
 <-6> matha5
<6-7> matha6
<7-8> matha7
<8-9> matha8
<9-10> matha9
 <10-12> matha10
  <12-> matha12
  } {}%
\DeclareSymbolFont{matha}{U}{matha}{m}{n}

\DeclareFontFamily{U}{mathb}{\hyphenchar\font45}
\DeclareFontShape{U}{mathb}{m}{n}{% 
<-6> matha5 
<6-7> matha6 
<7-8> mathb7 
<8-9> mathb8 
<9-10> mathb9 
<10-12> mathb10 
<12-> mathb12 
}{}%
\DeclareSymbolFont{mathb}{U}{mathb}{m}{n}%

\DeclareMathSymbol{\nvdash}{\mathrel}{matha}{"26}
\DeclareMathSymbol{\ndashv}{\mathrel}{matha}{"27}
\DeclareMathSymbol{\nvDash}{\mathrel}{matha}{"2E}
\DeclareMathSymbol{\nDashv}{\mathrel}{matha}{"2F}
\DeclareMathSymbol{\nVdash}{\mathrel}{matha}{"2A}
\DeclareMathSymbol{\ndashV}{\mathrel}{matha}{"2B}

\DeclareMathSymbol{\nVDash}{\mathrel}{mathb}{"2A}
\DeclareMathSymbol{\nDashV}{\mathrel}{mathb}{"2B}
\DeclareMathSymbol{\nVvdash}{\mathrel}{mathb}{"2E}
\DeclareMathSymbol{\ndashVv}{\mathrel}{mathb}{"2F}

\begin{document}

    \begin{alignat*}{4}
\texttt{\textbackslash nvdash} &\quad & \nvdash &\hspace{4em} & \texttt{\textbackslash ndashv} &\quad & \ndashv \\
\texttt{\textbackslash nvDash} &\quad & \nvDash &\hspace{4em} & \texttt{\textbackslash nDashv} &\quad & \nDashv \\
\texttt{\textbackslash nVdash} &\quad & \nvDash &\hspace{4em} & \texttt{\textbackslash ndashV} &\quad & \nDashv \\\\
\texttt{\textbackslash nVDash} &\quad & \nVDash &\hspace{4em} & \texttt{\textbackslash nDashV} &\quad & \nDashV \\
\texttt{\textbackslash nVvdash} &\quad & \nVDash &\hspace{4em} & \texttt{\textbackslash nDashV} &\quad & \ndashVv
\end{alignat*}

\end{document} 

enter image description here


\documentclass{article}
\usepackage{amssymb}
\newcommand\doesnotentail{\mkern-2mu\not\mkern2mu\vdash}
\begin{document}
$A\doesnotentail B$

$A\vdash B$
\end{document}

enter image description here

And some other ways:

\documentclass{article}
\usepackage{amssymb,stackengine}
\newcommand\doesnotentail{\mathrel{\ensurestackMath{%
  \stackengine{.175em}{\vdash}{\scriptstyle/}{O}{c}{F}{F}{L}}}}
\begin{document}
$A\doesnotentail B$ via stackengine

$A\vdash B$ \textbackslash vdash

$A\nvdash B$ \textbackslash nvdash
\end{document}

enter image description here


The ⊬ is U+22AC (Does Not Prove). This is \nvdash in amssymb and many other packages, including unicode-math, pxfonts, MnSymbol, fdsymbol, mathabx, stix and more.

\documentclass[varwidth, preview]{standalone}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amssymb} % Or your font package of choice.

\DeclareUnicodeCharacter{22AC}{\ensuremath{\nvdash}}

\begin{document}
\( p ⊬ q \) and \(q \nvdash p\).
\end{document}

p ⊬ q and q ⊬ p

The Comprehensive LaTeX Symbols List shows what the symbol looks like in many of these fonts.

Even simpler:

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

% You can \setmainfont and \setmathfont here.

\begin{document}
\( p ⊬ q \) and \(q \nvdash p\).
\end{document}

The List of Symbols Defined by unicode-math shows what this symbol looks like in several OpenType fonts (on page 58).

But, the other answers give some really clever ways to fake it, if you want to make things more complicated.

Tags:

Symbols