1

Given the following MWE, based upon the answer by @egreg to this question, how may \Mmodels be redefined so that the overset M is lifted about 1pt, and also shifted to the left by the same amount?


\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{stackengine}%Myoverset

\makeatletter% redefine \models to be similar in size and shape to \vdash \renewcommand{\models}{\mathrel{\mathpalette\models@\relax}} \newcommand{\models@}[2]{% \begingroup \mspace{-1.3mu}% \sbox\z@{$\m@th#1\vdash$} \resizebox{\width}{\dimexpr\ht\z@+\dp\z@}{\raisebox{\depth}{$\m@th#1|$}}% \mspace{-3.8mu}% \nonscript\mspace{0.8mu}% \raisebox{0.25\height}{\resizebox{\wd\z@}{\height}{$\m@th#1=$}}% \endgroup } \newcommand{\inset}[1]{\mathrel{\mathpalette\inset@{#1}}} \newcommand{\inset@}[2]{% \makebox[0pt][l]{$\m@th#1\mspace{3mu}_{#2}$} } \makeatother

\newcommand\oversetnorm{.4\normalbaselineskip}%Myoverset \makeatletter \newcommand\myoverset[3][\oversetnorm]{% \binrel@{#3}\binrel@@{\mathop{\ensurestackMath{% \stackengine{#1}{#3}{\scriptstyle#2}{O}{c}{F}{F}{L}}}}} \makeatother

\newcommand{\Mmodels}{\myoverset{\textsc{m}}{\models,}}%models with overset small capital M

\begin{document}

\(\Mmodels\)

\end{document}

  • \newcommand\oversetnorm{\dimexpr.4\normalbaselineskip+1pt} for lifting a point. For the leftward shift, \newcommand\myoverset[3][\oversetnorm]{% \binrel@{#3}\binrel@@{\mathop{\ensurestackMath{% \stackengine{#1}{#3}{\kern-1pt\scriptstyle#2}{O}{c}{F}{F}{L}}}}}. – Steven B. Segletes Nov 20 '22 at 19:53

1 Answers1

1

Following the advice of my comment...

\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{stackengine}%Myoverset

\makeatletter% redefine \models to be similar in size and shape to \vdash \renewcommand{\models}{\mathrel{\mathpalette\models@\relax}} \newcommand{\models@}[2]{% \begingroup \mspace{-1.3mu}% \sbox\z@{$\m@th#1\vdash$} \resizebox{\width}{\dimexpr\ht\z@+\dp\z@}{\raisebox{\depth}{$\m@th#1|$}}% \mspace{-3.8mu}% \nonscript\mspace{0.8mu}% \raisebox{0.25\height}{\resizebox{\wd\z@}{\height}{$\m@th#1=$}}% \endgroup } \newcommand{\inset}[1]{\mathrel{\mathpalette\inset@{#1}}} \newcommand{\inset@}[2]{% \makebox[0pt][l]{$\m@th#1\mspace{3mu}_{#2}$} } \makeatother

\newcommand\oversetnorm{\dimexpr.4\normalbaselineskip+1pt}%Myoverset \makeatletter \newcommand\myoverset[3][\oversetnorm]{% \binrel@{#3}\binrel@@{\mathop{\ensurestackMath{% \stackengine{#1}{#3}{\kern-1pt\scriptstyle#2}{O}{c}{F}{F}{L}}}}} \makeatother

\newcommand{\Mmodels}{\myoverset{\textsc{m}}{\models,}}%models with overset small capital M

\begin{document}

\(\Mmodels\)

\end{document}

enter image description here