For the past few days I've noticed that \not\equiv is not rendering correctly; right now I'm running Firefox 13.0 on a machine running Windows 7.

\not\equiv is displaying like a thin empty box (barely perceptible that it is a box if the resolution is low, it is very thin): $\not\equiv$ Same thing happens in displaymode: $$\not\equiv$$

If I put \equiv in brackets, it is partially solved: \not{\equiv} displays as $\not{\equiv}$; adding some negative space makes it look reasonable: $\not{\!\equiv}$ with \not{\!\equiv}.

Here's a screenshot: enter image description here

Added. Just saw a similar problem in this question, only this time with \not\exists; screenshot:

enter image description here

Added: I switched to a different laptop. This one is running Firefox 12.0 on Windows 7, and the symbols display correctly.

Added 2: And then I updated Firefox to 13.0. and the problem occurred in this one again. So it seems pretty clear that it is a problem with Firefox 13.0 (at least on Windows).

Added 3: Some experiments: \not renders appropriately with \lt, \gt, =, a, \mid, \subseteq, \forall, \mapsto and \cong, but not with \subset, \to, \rightarrow, \leftarrow.

Added 4: Same issue occurs in my office computer, which is running Firefox 13.0 on a Ubuntu 10.04 linux machine.

  • 3
    $\begingroup$ The first two look okay to me. Maybe attach a screenshot? $\endgroup$ Jun 10, 2012 at 19:56
  • $\begingroup$ @Dylan: Done... sorry I didn't do it earlier, I was having trouble figuring our the screenshot process in Windows 7. $\endgroup$ Jun 10, 2012 at 20:03
  • $\begingroup$ I don't see it reported on MathJax's bug tracker. It should probably be reported there. (Arturo: since you have the ability to replicate this on two different computers, it may be best if you do this so you can answer any possible questions the devs may have about your setup.) $\endgroup$ Jun 11, 2012 at 7:44
  • $\begingroup$ @Arturo, Are you using MathJax's HTML-CSS output or its NativeMML output? $\endgroup$ Jun 11, 2012 at 11:52
  • $\begingroup$ @Davide: I don't know. How would I tell? $\endgroup$ Jun 11, 2012 at 14:55
  • $\begingroup$ @Arturo, right-click (or control-click on a mac) over any typeset equation to get the MathJax contextual menu. Look in "Math Settings" then "Math Renderer" to see which is selected. If you didn't change it yourself, then it should be HTML-CSS. $\endgroup$ Jun 11, 2012 at 15:51
  • $\begingroup$ @Davide: HTML-CSS indeed. $\endgroup$ Jun 11, 2012 at 15:56
  • $\begingroup$ @Arturo, one last request: can you use the MathJax menu to open the "About MathJax" dialog box and let me know what font mode is being used? (It is listed just under the MathJax title and version number at the top of the dialog box.) Thanks. $\endgroup$ Jun 11, 2012 at 18:00
  • $\begingroup$ @DavideCervone: Dialog box reads: MathJax v2.0, MathJax.js v2.0.3, TeXinput Jax v2.0, HTML-CSS Output Jax v2.0.1, mml Element Jax v2.0, MathEvents Extensions v2.0.1, MathMenu Extension v2.0.1, Math Zoom Extension v2.0, TeX/AMSmath Extension v2.0, TeX/noErrors Extension v2.0, TeX/noUndefined Extension v2.0, tex2jax Extension v2.0, Firefox v13.0 otf fonts. $\endgroup$ Jun 11, 2012 at 18:42
  • $\begingroup$ @Arturo, sorry, but what I need is actually just above the data you gave. It should say "using TeX web fonts" or "using local STIX fonts" or something like that. $\endgroup$ Jun 11, 2012 at 21:41
  • $\begingroup$ @DavideCervone: Oops. "Using TeX web fonts". Should I make a report at GitHub? This is the site that the banner on top of the site Willie Wong mentions above says one should go to. $\endgroup$ Jun 11, 2012 at 21:44
  • $\begingroup$ @Arturo, Thanks for the info. I'll take care of the bug report. $\endgroup$ Jun 11, 2012 at 23:20
  • $\begingroup$ @DavideCervone: Thanks; though I did not specify, the data above was from my Ubuntu machine. But all the information is the same in (one of) my Windows machines (did not check the other). $\endgroup$ Jun 12, 2012 at 3:14
  • $\begingroup$ @Arturo, here's one more question: does this happen if there is something in front of the \not\equiv. E.g., does $x\not\equiv y$ work for you? $\endgroup$ Jun 12, 2012 at 11:29
  • $\begingroup$ @DavideCervone: No, same display with something after it. $\endgroup$ Jun 12, 2012 at 13:40

1 Answer 1


OK, I think I understand what it happening. It looks like Firefox is converting multiple-character unicode sequences like U+2261 U+0338 (equiv followed by combining solidus overlay) to their single-character equivalents like U+2262 (not equiv), even when the font doesn't contain the required character. The MathJax fonts don't include all the negated forms, and so MathJax uses the two-character versions in those cases. Firefox seems to recombine them, producing the missing character marker (the thin block) that you are seeing.

Personally, I consider that a Firefox bug, but perhaps I can work around it in MathJax.

Update: Here is an extension that should resolve the \not problem in Firefox 13. Let me know if it works for you. It is a GreaseMonkey script, so you will need to install that (if you haven't already) in order to use the patch.

Update 2: Firefox 13.0.1 seems to have resolved the issue, so this extension is only needed for the initial version 13.0 and not later subversions.

  • 4
    $\begingroup$ Holy detective work, batman! I'm sure glad you hang around MSE. $\endgroup$ Jun 12, 2012 at 13:13
  • $\begingroup$ First: Thanks for taking the time to track this down! Second: No, I've never used greasemonkey. update: Okay, I just googled and found the add-on, and have installed greasemonkey. I'll try the extension and let you know if it works for me. Ubuntu now, Windows tonight at home. $\endgroup$ Jun 12, 2012 at 16:15
  • $\begingroup$ @Arturo, in the Tools menu is an Add-Ons item. Select that and you should get Firefox's add-ons manager tab. Type "GreaseMonkey" into the search bar at the top. That should get you a list of add-ons, and GreaseMonkey should be one. There should be an "Install" button next to it. Clicking that should install it. I don't remember if it requires a restart or not. Once running, if you click on the link in my post, it should put up a window asking if you want to install my extension. Do so, then reload this page and see if the character shows up properly. Let me know if more is needed. $\endgroup$ Jun 12, 2012 at 16:21
  • $\begingroup$ Okay, I installed it: it cleared up the \not\equiv and the \not\subset issue; however, it is still messing up \not\to, \not\rightarrow, and \not\leftarrow (I haven't tried all symbols, of course...) $\endgroup$ Jun 12, 2012 at 16:21
  • $\begingroup$ OK, it looks like there are some other combinations that I missed. I'll have to make a more complete list, and post an update. $\endgroup$ Jun 12, 2012 at 16:24
  • $\begingroup$ @Davide: I'm trying all the symbols on page 43 of Lamport's book. I'll let you know shortly which ones are messing up. $\endgroup$ Jun 12, 2012 at 16:27
  • $\begingroup$ @Davide: Okay: I tried all the relation and arrow symbols on page 43 of Lamport's book, plus a few other things. The ones that are still giving trouble are: \not\asymp, \not\leftarrow, \not\Leftarrow, \not\rightarrow, \not\Rightarrow, \not\leftrightarrow, and \not\Leftrightarrow $\endgroup$ Jun 12, 2012 at 16:32
  • $\begingroup$ @Arturo: Thanks, I had already figured out the arrows, but \asymp was not one I had seen, and it needs to be added to MathJax's official handling of \not as well. Thanks for catching that. I'll let you know when I have an update. I may not get it out until later today. $\endgroup$ Jun 12, 2012 at 16:43
  • $\begingroup$ @Arturo: I have updated the extension linked in my answer above. You should remove the one you have (via GreaseMonkey's "Manage Scripts" panel accessible from the menu in the upper right of the window) and click the link again to get the new version. It takes care of the missing arrows and \asymp, but also handles bold versions of the problematic symbols. Let me know if you find anything else missing. $\endgroup$ Jun 13, 2012 at 13:34
  • $\begingroup$ @Davide: Thank you very much! $\endgroup$ Jun 13, 2012 at 15:24
  • $\begingroup$ @Davide: I updated to Firefox 13.0.1 last night; on a whim, I un-enabled greasemonkey and your script, and at least \not\equiv seems to be displaying correctly regardless. I don't know enough about greasemonkey to know whether unchecking it actually disables it, but it's possible the issue may have gotten fixed on the firefox side. $\endgroup$ Jun 16, 2012 at 18:52
  • $\begingroup$ @Arturo, thanks for the info. I'll check it out myself and see what I can find out. $\endgroup$ Jun 16, 2012 at 22:51
  • 2
    $\begingroup$ @Arturo, it does look like FF 13.0.1 fixes the problem, so the extension is no longer necessary. Nice that they acted so fast on this one. $\endgroup$ Jun 16, 2012 at 22:58

You must log in to answer this question.

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