Repository: sympy/sympy

Issue:
Null MatrixSymbol printing using init_priting(use_unicode=True) for A*B*C-(A*B)*C produces '\bold0'
using `init_printing(use_unicode=True)` is necessary
```
In [1]: from sympy import *
In [2]: init_printing(use_unicode=True)     # this is necessary
In [3]: A = MatrixSymbol('A', 3, 2)
In [4]: B = MatrixSymbol('B', 2, 4)
In [5]: C = MatrixSymbol('C', 4, 3)
In [6]: A*B*C - (A*B)*C
Out [6]: \bold0
```
It is working fine on command line .Python 3.4.0 [GCC 4.8.2] on linux
This error is produced using IPython Notebook on Linux machine.  Sympy 0.7.6, Python 3.4
Zero matrix notebook display
A `ZeroMatrix` object has MathJax-incompatible LaTeX representation:

    >>> sympy.printing.latex(ZeroMatrix(n, n))
    '\\bold{0}'

Which results in the following in IPython notebook:

![zeromatrix](https://cloud.githubusercontent.com/assets/2069677/8637642/08f8a292-289c-11e5-9842-2ebac54882fa.png)

A fix should probably replace `bold` with `mathbb`.


Discussion:

Patch:
diff --git a/sympy/printing/latex.py b/sympy/printing/latex.py
index 7232a38d92..41a29beec6 100644
--- a/sympy/printing/latex.py
+++ b/sympy/printing/latex.py
@@ -1393,7 +1393,7 @@ def _print_MatPow(self, expr):
             return "%s^{%s}" % (self._print(base), self._print(exp))
 
     def _print_ZeroMatrix(self, Z):
-        return r"\bold{0}"
+        return r"\mathbb{0}"
 
     def _print_Identity(self, I):
         return r"\mathbb{I}"


Test patch:
diff --git a/sympy/printing/tests/test_latex.py b/sympy/printing/tests/test_latex.py
index 2739a1ac74..13c4c87fbd 100644
--- a/sympy/printing/tests/test_latex.py
+++ b/sympy/printing/tests/test_latex.py
@@ -1146,6 +1146,11 @@ def test_Hadamard():
     assert latex(HadamardProduct(X, Y)*Y) == r'\left(X \circ Y\right) Y'
 
 
+def test_ZeroMatrix():
+    from sympy import ZeroMatrix
+    assert latex(ZeroMatrix(1, 1)) == r"\mathbb{0}"
+
+
 def test_boolean_args_order():
     syms = symbols('a:f')