Function: math-mul-zero
math-mul-zero is an autoloaded and byte-compiled function defined in
calc-arith.el.gz.
Signature
(math-mul-zero A B)
Source Code
;; Defined in /usr/src/emacs/lisp/calc/calc-arith.el.gz
(defun math-mul-zero (a b)
(if (math-known-matrixp b)
(if (math-vectorp b)
(math-map-vec-2 'math-mul a b)
(math-mimic-ident 0 b))
(if (math-infinitep b)
'(var nan var-nan)
(let ((aa nil) (bb nil))
(if (and (eq (car-safe b) 'intv)
(progn
(and (equal (nth 2 b) '(neg (var inf var-inf)))
(memq (nth 1 b) '(2 3))
(setq aa (nth 2 b)))
(and (equal (nth 3 b) '(var inf var-inf))
(memq (nth 1 b) '(1 3))
(setq bb (nth 3 b)))
(or aa bb)))
(if (or (math-posp a)
(and (math-zerop a)
(or (memq calc-infinite-mode '(-1 1))
(setq aa '(neg (var inf var-inf))
bb '(var inf var-inf)))))
(list 'intv 3 (or aa 0) (or bb 0))
(if (math-negp a)
(math-neg (list 'intv 3 (or aa 0) (or bb 0)))
'(var nan var-nan)))
(if (or (math-floatp a) (math-floatp b)) '(float 0 0) 0))))))