--- a/src/op-mp.cc
+++ b/src/op-mp.cc
@@ -36,22 +36,28 @@
 #undef DEFUNOP_OP
 #endif
 
-#define DEFUNOP_OP(name, t, op)                  \
-  UNOPDECL (name, a)                             \
-  {                                                     \
-    octave_mp retval;                                   \
-    return retval.oct_monop_proxy (a, mpfr_ ## op);     \
+#define DEFUNOP_OP(name, t, op)                          \
+  UNOPDECL (name, a)                                     \
+  { /* provides some uninitialized context */            \
+    octave_mp retval;                                    \
+    return retval.oct_monop_proxy (a, mpfr_ ## op);      \
   }
 DEFUNOP_OP (uminus, octave_mp, neg)
 
 #undef DEFUNOP_OP
-#define DEFUNOP_OP(name, t, op)                  \
-  UNOPDECL (name, a)                             \
-  {                                                     \
-    octave_mp retval;                                     \
+#define DEFUNOP_OP(name, t, op)                                         \
+  UNOPDECL (name, a)                                                    \
+  { /* provides some uninitialized context */                           \
+    octave_mp retval;                                                   \
     return retval.oct_monocmp_proxy (a, mpfr_ ## op).bool_value ();     \
   }
-DEFUNOP_OP (not, octave_mp, regular_p)
+DEFUNOP_OP (not, octave_mp, zero_p)
+
+/*
+%!assert(!mpv(4)==0)
+%!assert(!mpv(0)==1)
+%!assert(-mpv(-4)==4)
+*/
 
 /* generate our own version of DEFBINOP */
 #if defined(DEFBINOP_OP)
@@ -62,7 +68,7 @@
   BINOPDECL (name, a1, a2)                                              \
   {                                                                     \
     octave_mp retval;                                                   \
-    return  retval.oct_binop_proxy (a1, a2, mpfr_ ## op);               \
+    return retval.oct_binop_proxy (a1, a2, mpfr_ ## op);                \
   }
 DEFBINOP_OP (add, mp, mp, add)
 DEFBINOP_OP (sub, mp, mp, sub)
@@ -86,7 +92,7 @@
   BINOPDECL (name, a1, a2)                                              \
   {                                                                     \
     octave_mp retval;                                                   \
-    return  retval.oct_bincmp_proxy (a1, a2, mpfr_ ## op);                 \
+    return  retval.oct_bincmp_proxy (a1, a2, mpfr_ ## op);              \
   }
 
 DEFBINOP_OP (lt, mp, mp, less_p)