248

I am using WinEdt 6 for compiling my TeX documents. I am getting an error with contains the line $\mathbb{Z}$ showing that it is undefined control sequence. How should I rectify it? Should I include any math packages or something. I am a beginner in using TeX.

  • 21
    This was my very first LaTeX error! It took me days to figure out; no online resource I read thought to mention that it was assuming the amssymb package. – Ryan Reich Dec 19 '11 at 16:19
  • http://www.tex.ac.uk/cgi-bin/texfaq2html?label=numbersets describes the AMS fonts, and says "Support files for using the fonts, both under Plain TeX and LaTeX (packages amssymb and amsfonts), are available. [...]". this of course doesn't help, if you're a person who doesn't like to read faq answers... – wasteofspace Dec 19 '11 at 16:56
  • 2
    did you try \usepackage{amsfonts}? I don't think anything else is needed in a very basic overleaf new doc. – Charlie Parker Feb 22 '22 at 00:24

4 Answers4

305

Load the amsfonts package, this provides that command:

\documentclass{article}
\usepackage{amsfonts}
\begin{document}
$\mathbb{Z}$
\end{document}

Optionally you could load amssymb, as this in turn loads amsfonts.

\documentclass{article}
\usepackage{amssymb}
\begin{document}
$\mathbb{Z}$
\end{document}

For reference, the Comprehensive LaTeX Symbol List has also a table of mathematical alphabets, and the packages required for using them. In the current version (dated 25 June 2020) of the document, it is table 316 with the caption Math Alphabets. It is the final table in chapter 3 Mathematical symbols.

Niko Fohr
  • 744
  • 1
  • 7
  • 15
Torbjørn T.
  • 206,688
  • Thank you. Would the same be sufficient for \mathds?? – Ramana Venkata Dec 19 '11 at 11:03
  • 3
    @RamanaVenkata No, for that you have to load the dsfont package. – Torbjørn T. Dec 19 '11 at 11:07
  • I guess the document you reference is subject to chance, if other people are looking for it here a description that is hopefully less prone to change. Look at the chapter called Mathematical symbols (currently chapter 3) and look for the table called "mathematical alphabets". It is last table in that chapter at this moment and currently numbered 307. – Maarten Derickx Jun 01 '18 at 09:07
  • @koffie Indeed. I updated the text in my answer a bit. – Torbjørn T. Jun 01 '18 at 09:17
  • 2
    Apparently amsmath does not load amsfonts automatically. – Solomon Ucko Jan 25 '19 at 20:41
  • 1
    @SolomonUcko -- Indeed, amsmath does not load amsfonts. When these packages were created, memory was at a premium, and loading of necessary packages was left to the user. – barbara beeton Jan 10 '20 at 03:07
  • which of the two is better? Giving two options is confusing without further remarks. – Charlie Parker Feb 22 '22 at 00:23
  • all you need is \usepackage{amsfonts} the rest of the answer is confusing. – Charlie Parker Feb 22 '22 at 00:27
  • @CharlieParker Yes, perhaps mentioning amssymb was unnecessary, I can't remember now why I added it in the first place ... It wasn't completely without further remarks though, I do say that amssymb is an option because "this in turn loads amsfonts". So in that sense they do exactly the same thing with regard to \mathbb. What amssymb does more is to provide definitions for various mathematical symbols. – Torbjørn T. Feb 22 '22 at 20:30
6

The \mathbb command is provided via the amsfonts package. Add

\usepackage{amsfonts}

to the preamble to solve this problem.

Rushi
  • 837
Khawar Islam
  • 175
  • 1
  • 8
2

You can load many other fonts for \mathbb with either unicode-math, which supports modern OpenType math fonts, or mathalpha, which supports legacy 8-bit math alphabets.

Davislor
  • 44,045
  • using \usepackage{amsfonts} is easier, no? – Charlie Parker Feb 22 '22 at 00:27
  • @CharlieParker obviously that depends on your document. If you want some other alphabets, like script and other not provided by amsfonts you will end up loading many more packages than just unicode-math. Another example when unicode-math is more useful is when you need to load many fonts (not recommended but it is possible). You have to give a try to unicode-math and decide by yourself which package is better in certain contexts. – Luis Turcio Feb 22 '22 at 01:16
2

You can use the following two packages.

\usepackage{amsmath}
\usepackage{amssymb}