13

I have the problem with a symbol for symmetric difference (see http://en.wikipedia.org/wiki/Symmetric_difference). In commonly used is

\triangle
\ominus

But in Polish tradition often is used:

\dot{-}

and I would like to ask if it is possible to make dot be a little bit down to (close to) line (here where is the red dot).

enter image description here

7

I've shifted the dot down 3pt relative to \dot{-}. You may adjust the value of \dysym to suit.

\documentclass{article}
\usepackage{stackengine}
\def\stacktype{L}
\stackMath
\def\dysym{-3pt}
\newcommand\symdif{\mathrel{\stackon[\dysym]{-}{\dot{\phantom{-}}}}}
\begin{document}
\( A \symdif B \)
\end{document}

enter image description here

If there is a need to have it work in \scriptstyle math as well, this slightly more complex version would probably be OK. By specifying \dysym in a scalable unit (ex's vs. pts), it allows spacing to (sort of) be preserved at smaller scale.

\documentclass{article}
\usepackage{stackengine}
\usepackage{scalerel}% IF YOU NEED IT FOR SCRIPTSTYLE MATH
\def\stacktype{L}
\stackMath
\def\dysym{.2ex}
\newcommand\symdif{\ThisStyle{\mathrel{%
                   \stackunder[\dysym]{\SavedStyle-}{\SavedStyle\dot{}}}}}
\begin{document}
\( A \symdif B \)
\(\scriptstyle A \symdif B \)
\(\scriptscriptstyle A \symdif B \)
\end{document}

enter image description here

  • Why don’t you use a length register for \dysym, i.e. \newlength\dysym \setlength\dysym{-3pt}? – Tobi Aug 14 '13 at 19:03
  • @Tobi See revision with \scriptstyle. If length register were used, the dot-dash spacing would not shrink in the smaller math style. – Steven B. Segletes Aug 14 '13 at 19:20
  • @StevenB.Segletes -- well, i've tried out what i was suggesting, and you're correct -- it doesn't work. i retract (and have removed) my comment. (but i still feel there's a less complex way; i'll experiment.) – barbara beeton Aug 14 '13 at 20:36
8

The main problem is that the minus sign has usually the same height as the plus sign. With \ooalign one can avoid this problem:

\documentclass{article}
\providecommand{\dotminus}{\mathbin{\mathpalette\xdotminus\relax}}
\newcommand{\xdotminus}[2]{%
  \ooalign{\hidewidth$\vcenter{\hbox{$#1\dot{}$}}$\hidewidth\cr$#1-$\cr}%
}

\begin{document}
$A\dotminus B$
\end{document}

I use \providecommand because at least one package (MnSymbol) defines it; but it's not advisable to load the package, that changes all math symbols.

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.