[Tex/LaTex] Package mathabx results in tiny square as QED

amssymbmathabx

If I use amssymb, the square at the end of the proof would just be in normal size. But when I use mathabx, the square gets tiny. Is there any way I can use mathabx and still get the normal square?enter image description here

\documentclass[11pt]{article}

\usepackage{amssymb}
\usepackage{mathabx}

\newenvironment{prf}{\underline{\textbf{Proof:}}}{\hfill $\square$}


\begin{document}

\begin{prf}
This is my proof using mathabx.
\end{prf}

\end{document}

Thank you!

Best Answer

You can use

\let\oldsquare\square

before loading mathabx and then use \oldsquare in your definition:

\documentclass[11pt]{article}
\usepackage{amssymb}
\let\oldsquare\square
\usepackage{mathabx}

\newenvironment{prf}{\underline{\textbf{Proof:}}}{\hfill$\oldsquare$}

\begin{document}

\begin{prf}
This is my proof using mathabx.
\end{prf}

\end{document}

enter image description here

The proof environment from the amsthm package doesn't use \square, but \openbox as the end-mark, so you can define this command as amsthm.sty does and use it for your definition:

\documentclass[11pt]{article}
\usepackage{amssymb}
\usepackage{mathabx}

\newcommand{\openbox}{\leavevmode
  \hbox to.77778em{%
  \hfil\vrule
  \vbox to.675em{\hrule width.6em\vfil\hrule}%
  \vrule\hfil}}
\newenvironment{prf}{\underline{\textbf{Proof:}}}{\hfill$\openbox$}

\begin{document}

\begin{prf}
This is my proof using mathabx.
\end{prf}

\end{document}

enter image description here

I'd suggest you, however, to use the amsthm package and its built-in proof environment to typeset your proofs. This will give you, amongst other, proper spacing before and after the proofs, proper placement of the end-mark, no indentation for the first line.

In the follwoing example I used both environments for comparison (I suppressed the underlining, since it is not a typographical good practise, but you can add it back of you really need it):

\documentclass[11pt]{article}
\usepackage{amssymb}
\usepackage{mathabx}
\usepackage{amsthm}

\newenvironment{prf}{\underline{\textbf{Proof:}}}{\hfill$\openbox$}
\renewcommand\proofname{\normalfont\bfseries Proof:}

\begin{document}

\begin{prf}
This is my proof using mathabx.
\end{prf}

\begin{proof}
This is my proof using mathabx amnd amsthm.
\end{proof}

\end{document}

enter image description here

mathabx also offers \boxvoid, but this produces a square that it's slightly bigger than the regular \openbox command.

Are you sure you want to use mathabx? I ask you because the package redefines many math symbols (as you've already experienced). If you are interestef just in a particular symbol from mathabx, then Importing a Single Symbol From a Different Font shows you how to import the symbol without loading the package.

Related Question