The following code is throwing an error of "missing number, treated as zero". But it says here that any parameters in theorem style I leave blank will be treated as default. What is going on?

\usepackage{amsthm, amsmath}

\newtheoremstyle{MyTheorem}% name of the style to be used
  {}% measure of space to leave above the theorem. E.g.: 3pt
  {}% measure of space to leave below the theorem. E.g.: 3pt
  {}% name of font to use in the body of the theorem
  {}% measure of space to indent
  {}% name of head font
  {}% punctuation between head and body
  {}% space after theorem head; " " = normal interword space
  {}% Manually specify head



Any $\ell \in L$ is a root of an irreducible polynomial $p \in F[x]$ which splits in $L$ into distinct linear factors.

  • 1
    ** {}% space after theorem head; " " = normal interword space** so you need to make it { } :-) – touhami Sep 30 '16 at 19:46
  • @touhami I notice if I leave the font names blank, it doesn't go to the defaults (mathbf), it goes to normalfont. That's funny. – Eric Auld Sep 30 '16 at 19:49
  • I'm pretty sure the default fonts are not set, except maybe by some classes. So if you leave one blank, no font command is issued (except for a \normalfont used to reset the font parameters). \bfseries (not \mathbf) is used by the plain theorem style, but it is not a default. – Dan Sep 30 '16 at 20:00
  • @EricAuld \normalfont is (by definition) the default font isn't it? – David Carlisle Sep 30 '16 at 20:08

The documentation for amsthm is amsthdoc.pdf (texdoc amsthm) which describes this command on page 9.

The arguments that have special meaning for empty are noted with footnotes and this does not include the last but one argument for space after the theorem head, so leaving that empty is like \hspace{} which is an error.

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.