I've defined the following new commands:


to use in this formula (and other formulas in which $\atoi$ occurs):

$\psi^{\scriptatoi x\phi}_{z}  \equiv \exists y(\phi^y_x \:\&\: \forall u(\phi^u_x \rightarrow u\!=\!y) \:\&\: \psi^y_z)$

When I typeset the LaTeX source file using pdflatex (from TeXLive 2010), I get the following complaint:

LaTeX Font Warning: Command \scriptsize invalid in math mode on input line 352.

If, however, I write the following line instead:

$\psi^{\atoi x\phi}_{z}  \equiv \exists y(\phi^y_x \:\&\: \forall u(\phi^u_x \rightarrow u\!=\!y) \:\&\: \psi^y_z)$

the atoi character appears full size, not superscript size.


$\psi^{\scriptsize\atoi x\phi}_{z}  \equiv \exists y(\phi^y_x \:\&\: \forall u(\phi^u_x \rightarrow u\!=\!y) \:\&\: \psi^y_z)$

again yields the desired typeset result, and again yields the LaTeX Font Warning.

How can I do what I want, that is, get my new symbol in an appropriate superscript size when using it in a superscript, while respecting the font restrictions of math mode?


3 Answers 3


this construction is simple enough that you can forget about redefining it for multiple sizes. instead, use the \text facility of amsmath:


this can be used both in the "main line" and in super/subscripts of any level, and it should produce the desired result.

(the definition of \text is based on \mathchoice; take a look at amstext.sty -- it isn't very long.)


You can use the command \mathchoice that chooses the correct math size:


As egreg points out in the chat, this is the job of the command \mathpalette (see details here), so the following is an exact equivalent of the preceeding:


use it this way:


in math mode the font style is scriptstyle

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .