Function: math-combine-prod-trig

math-combine-prod-trig is a byte-compiled function defined in calc-arith.el.gz.

Signature

(math-combine-prod-trig A B)

Source Code

;; Defined in /usr/src/emacs/lisp/calc/calc-arith.el.gz
(defun math-combine-prod-trig (a b)
  (cond
   ((and (eq (car-safe a) 'calcFunc-sin)
         (eq (car-safe b) 'calcFunc-csc)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    1)
   ((and (eq (car-safe a) 'calcFunc-sin)
         (eq (car-safe b) 'calcFunc-sec)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-tan (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-sin)
         (eq (car-safe b) 'calcFunc-cot)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-cos (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-cos)
         (eq (car-safe b) 'calcFunc-sec)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    1)
   ((and (eq (car-safe a) 'calcFunc-cos)
         (eq (car-safe b) 'calcFunc-csc)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-cot (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-cos)
         (eq (car-safe b) 'calcFunc-tan)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-sin (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-tan)
         (eq (car-safe b) 'calcFunc-cot)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    1)
   ((and (eq (car-safe a) 'calcFunc-tan)
         (eq (car-safe b) 'calcFunc-csc)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-sec (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-sec)
         (eq (car-safe b) 'calcFunc-cot)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-csc (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-sinh)
         (eq (car-safe b) 'calcFunc-csch)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    1)
   ((and (eq (car-safe a) 'calcFunc-sinh)
         (eq (car-safe b) 'calcFunc-sech)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-tanh (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-sinh)
         (eq (car-safe b) 'calcFunc-coth)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-cosh (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-cosh)
         (eq (car-safe b) 'calcFunc-sech)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    1)
   ((and (eq (car-safe a) 'calcFunc-cosh)
         (eq (car-safe b) 'calcFunc-csch)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-coth (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-cosh)
         (eq (car-safe b) 'calcFunc-tanh)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-sinh (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-tanh)
         (eq (car-safe b) 'calcFunc-coth)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    1)
   ((and (eq (car-safe a) 'calcFunc-tanh)
         (eq (car-safe b) 'calcFunc-csch)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-sech (cdr a)))
   ((and (eq (car-safe a) 'calcFunc-sech)
         (eq (car-safe b) 'calcFunc-coth)
         (= 0 (math-simplify (math-sub (cdr a) (cdr b)))))
    (cons 'calcFunc-csch (cdr a)))
   (t
    nil)))