# How do you get \mathbb{1} to work (characteristic function of a set)?

I am trying to get the digit one printed the \mathbb{} font in math mode, however the command

\mathbb{1}


outputs some rubbish. I certainly saw the character I am after in some pdf's generated from latex, hence my question: how do you get it to work?

• possible duplicate of How do I make a blackboard 1? Aug 27 '11 at 15:04
• The \mathbb provided as part of the amsfonts package does not provide numerals. Section 3.3 of amsfonts' documentation states that the \mathbb command it provides uses the msbm font and so supports only uppercase letters: no lowercase, no numerals.
– mas
Aug 27 '11 at 15:52
• note that using any package that provides a complete blackboard bold font overrides the \mathbb provided by amsfonts. if you wish to replace only the digit "1", you can use the method described here: Importing a single symbol from a different font Feb 13 '17 at 17:30
• off topic: After years reading math texts, I think that the most common notation for the characteristic function of a set $A$ is \chi_A. Feb 27 '18 at 11:25
• How come "they" don't fix this? Is there a fundamental problem? Jan 20 '20 at 4:41

Since \mathbb doesn't support digits (with amssymb or txfonts) you may use bbm

\documentclass{article}
\usepackage{bbm}
\begin{document}
$\mathbbm{1}$
\end{document}


or dsfont, the doublestroke package:

\documentclass{article}
\usepackage{dsfont}
\begin{document}
$\mathds{1}$
\end{document}


• I guess \mathbbm{1}is the best in terms of consistency with \mathbb. Nov 28 '14 at 23:15
• You can also add \newcommand{\1}[1]{\mathds{1}\left[#1\right]} to your preamble to create a quick indicator function that handles what you wanna put inside it. Nov 8 '16 at 23:07
• It’s too bad that this is the accepted answer, because bbm is available only as METAFONT and gives pixelated output in a PDF. Feb 16 at 0:11
• @Davislor It's nearly 10 years old, things may change and improve over time. Perhaps edit it to add information that's a better alternative to bbm? dsfont is already mentioned. Gladly a reference to other answers (to easily see it with any StackExchange sorting). Feb 16 at 9:27

Another option is to use bbold package.

\documentclass{article}
\usepackage{bbold}
\begin{document}
$\mathbb{1}$
\end{document}


Though it ruins the letters.

I'm surprised no one has mentioned this, but you can use the unicode-math package. Note that you need Xe(La)TeX or LuaLaTeX to use this package.

\documentclass{article}

\usepackage{amsmath}
\usepackage{unicode-math}

\begin{document}
$\mathbb{1}$
\end{document}


• Perhaps because it can't be used with pdflatex: "Package unicode-math Error: Cannot be run with pdfLaTeX!" May 24 '20 at 16:53
• Only this worked for me with LuaLaTex. Jun 5 '20 at 13:34

Playing some necromancy here, the answer looks very different in 2021. I especially advise against using bbm, as the accepted answer suggests, since the old-fashioned font format it loads will come out pixelated in a PDF, and nobody prints DVIs out on paper any more.

I’d recommend using unicode-math in LuaTeX when you can, and legacy fonts when you have to. Nearly all OpenType math fonts support \mathbb{1} and \Bbbone out of the box. Few if any come with a bold version that supports \boldsymbol{\mathbb{1}}, but you can fake it if you need it:

\documentclass{article}
\tracinglostchars=2
\usepackage{unicode-math}

\setmathfont{NewCMMath-Book}
\setmathfont{NewCMMath-Book}[
version=bold,
FakeBold = 1.2 ]

\begin{document}
$\mathbb{1} \boldsymbol{\mathbb{1}}$
\end{document}


If your publisher still requires you to use PDFTeX, or you should wish to, the mathalpha package provides a consistent interface for loading and scaling math alphabets, including blackboard bold and bold blackboard bold. Here are the options that ship with TeX Live and at least partially work:

(Note that you do not need to define \Bbbbone this way in your own document! I put this in the template to simplify testing.)

\documentclass{article}
\usepackage{amsmath}
\usepackage[bb=dsserif]{mathalpha}
\usepackage{bm}

\pagestyle{empty}

\newcommand\Bbbbone{%
\ifdefined\mathbbb%
\mathbbb{1}%
\else%
\boldsymbol{\mathbb{1}}%
\fi}

\begin{document}
$\mathbb{1} \Bbbbone$
\end{document}


The dsserif alphabet is the only free one I know of that supports both blackboard-bold and bold-blackboard-bold digits in Type-1 format, and that a package can load without changing your other fonts. You will probably want to scale this to match your math font, with the bbscaled= package option.

With bb=pazo instead of bb=dsserif:

With bb=fourier:

With bb=esstix:

With bb=boondox:

There are other legacy packages not available through mathalpha (as of February 2021). Here are some of the more important ones that have not already been mentioned.

The cmathbb package is an attractive outline font based on Computer Modern bold.

With \usepackage[varbb]{newtxmath}, you get the same alphabet as in Xovee’s answer, but replacing the standard \mathbb:

There is a similar option for newpxmath (although this is incompatible with bm).

\documentclass{article}
\usepackage{amsmath}
\usepackage[varbb]{newpxmath}

\pagestyle{empty}

\newcommand\Bbbbone{%
\ifdefined\mathbbb%
\mathbbb{1}%
\else%
\boldsymbol{\mathbb{1}}%
\fi}

\begin{document}
$\mathbb{1} \Bbbbone$
\end{document}


There is yet another blackboard bold alphabet available through newtxmath and newpxmath, with the vvarbb package option:

The stix and stix2 packages load an alphabet similar to boondox. (Which is a fork of the STIX fonts.) Here is what you get with \usepackage{stix2} instead of mathalpha:

A new solution: use newtxmath package.

With code:

\usepackage{newtxmath}

$\vmathbb{ABCDEFGHIGKLMNOPQRSTUVWSYZ}$
$\vmathbb{abcdefghijklmnopqrstuvwxyz}$
$\vmathbb{0123456789}$


which results:

Also, this solution is compatible with the ACM Template's whitelist restriction, since there're no need to import other packages, the document class asmart already imported the newtxmath. However, there's some bugs if you do not explicitly import the newtxmath, if you try to type blackboard bold 1 in this situation, try \vmathbb{s}, this outputs the right format.

Here's the document of the newtxmath: http://ctan.mirror.colo-serv.net/fonts/newtx/doc/newtxdoc.pdf

Update: In new version of TeX (2020), I found that \vmathbb{1} worked correctly.

• Why the lower case letters (except k) are not supported? Mar 15 '20 at 19:56

This worked for me:

\usepackage{mathbbol}

+\mathbb{1}+


Actually, I'm using LyX, so I put \usepackage in the preamble and then simply used \mathbb with a 1 inside a formula box. It still displays as rubbish' but renders fine as PDF.

If you don't like the discordance in LyX, you can say something like

\def\bbone{\mathbb{1}}


in the preamble, and then use \bbone in your document, or variants on this theme.

My 2c.

\documentclass{article}
\usepackage{anyfontsize}
% For documents in 10pt, 11pt or 12pt
% \def\one{\mbox{1\hspace{-3.85pt}\fontsize{11}{14.4}\selectfont\textrm{1}}} % 10pt
\def\one{\mbox{1\hspace{-4.25pt}\fontsize{12}{14.4}\selectfont\textrm{1}}} % 11pt
% \def\one{\mbox{1\hspace{-4.75pt}\fontsize{13}{14.4}\selectfont\textrm{1}}} % 12pt
\begin{document}
You can use either $\one$ or $\one\{A\}$ or $\one_{A}$.
\end{document}


• Welcome to TeX.SE. Do note that \rm is considered deprecated for a LaTeX document. It also doesn't take an argument; instead, it acts as a switch. Thus, instead of \rm{\fontsize{11}{14.4}\selectfont 1}, do write \fontsize{11}{14.4}\selectfont\textrm{1}. Also, is there something that can be done to produce less of an overlap/clash between the tops of the two 1` numeral?
– Mico
Feb 12 '17 at 16:27
• The correct metrics depend on the font and font family, I guess. I typeset most of my documents with \usepackage{mathptmx}, a Times like font, and the code given works just perfectly. Adjust the argument of \hspace accordingly. Feb 12 '17 at 17:19