Is there a wider equal sign?
Just put two equals signs, backing up slightly:
\newcommand{\eqdef}{\overset{\mathrm{def}}{=\joinrel=}}
This is how TeX builds extensible arrows.
The magic macro \joinrel
is defined as
\mathrel{\mkern-3mu}
and the magic is done by the fact that TeX doesn't put spaces between consecutive relation symbols:
=\mathrel{\mkern-3mu}=
will thus result in two equals signs slightly superimposed to each other.
The extarrows
package provides \xlongequal{<stuff>}
:
\documentclass{article}
\usepackage{extarrows}% http://ctan.org/pkg/extarrows
\newcommand{\eqdef}{\xlongequal{\text{def}}}%
\begin{document}
\[ f(x) \eqdef g(x) = ax^2+bx+c \]
\end{document}
extarrows
requires amsmath
(so it is loaded by default). As such, I've used \text
which scales to the appropriate text font in the given math size.
If you want the boundary of the overset def
to be tighter, use
\newcommand{\eqdef}{\xlongequal{\!\text{def}\!}}%
which removes some space around def
.
If you want the size to math exactly, you can use \resizebox
from the graphicx
package and scale the width to the desired size (width of the unscaled version), and leave the height to be the same as the height of the =
sign. Here is a comparison of the regular, and re sized versions:
\documentclass[border=2pt]{standalone}
\usepackage{amsmath}%
\usepackage{graphicx}% needed for \resizebox
\usepackage{calc}% needed for the width/height calculations
\newcommand*{\MyDef}{\mathrm{def}}
\newcommand*{\eqdefU}{\ensuremath{\mathop{\overset{\MyDef}{=}}}}% Unscaled version
\newcommand*{\eqdef}{\mathop{\overset{\MyDef}{\resizebox{\widthof{\eqdefU}}{\heightof{=}}{=}}}}
\begin{document}
\begin{alignat*}{2}
f(x) &\eqdefU g(x) = h(x) \quad\text{Unscaled}\\
f(x) &\eqdef g(x) = h(x) \quad\text{Scaled}
\end{alignat*}
\end{document}