+(setq var-TrigDefRules
+ '(vec (calcFunc-phase 1)
+ (calcFunc-assign
+ (calcFunc-sin (var t var-t))
+ (/ (- (^ (var e var-e) (* (var i var-i) (var t var-t)))
+ (^ (var e var-e) (neg (* (var i var-i) (var t var-t)))))
+ (* 2 (var i var-i))))
+ (calcFunc-assign
+ (calcFunc-cos (var t var-t))
+ (/ (+ (^ (var e var-e) (* (var i var-i) (var t var-t)))
+ (^ (var e var-e) (neg (* (var i var-i) (var t var-t)))))
+ 2))
+ (calcFunc-assign
+ (calcFunc-arcsin (var x var-x))
+ (* (neg (var i var-i))
+ (calcFunc-ln (- (* (var i var-i) (var x var-x))
+ (calcFunc-sqrt (- 1
+ (^ (var x var-x) 2)))))))
+ (calcFunc-assign
+ (calcFunc-arccos (var x var-x))
+ (* (neg (var i var-i))
+ (calcFunc-ln (- (var x var-x)
+ (calcFunc-sqrt (- (^ (var x var-x) 2)
+ 1))))))
+ (calcFunc-assign
+ (calcFunc-arctan (var x var-x))
+ (* (frac -1 2)
+ (* (var i var-i)
+ (calcFunc-ln (/ (+ 1 (* (var i var-i)
+ (var x var-x)))
+ (- 1 (* (var i var-i)
+ (var x var-x))))))))
+ (calcFunc-assign
+ (calcFunc-arctanh (var x var-x))
+ (* (frac 1 2)
+ (calcFunc-ln (/ (+ 1 (var x var-x))
+ (- 1 (var x var-x))))))
+
+ (calcFunc-phase 2)
+ (calcFunc-assign
+ (calcFunc-tan (var t var-t))
+ (/ (calcFunc-sin (var t var-t))
+ (calcFunc-cos (var t var-t))))
+ (calcFunc-assign
+ (calcFunc-sinh (var t var-t))
+ (* (neg (var i var-i))
+ (calcFunc-sin (* (var i var-i) (var t var-t)))))
+ (calcFunc-assign
+ (calcFunc-cosh (var t var-t))
+ (calcFunc-cos (* (var i var-i) (var t var-t))))
+ (calcFunc-assign
+ (calcFunc-tanh (var t var-t))
+ (/ (calcFunc-sinh (var t var-t))
+ (calcFunc-cosh (var t var-t))))
+ (calcFunc-assign
+ (calcFunc-arcsinh (var x var-x))
+ (* (neg (var i var-i))
+ (calcFunc-arcsin (* (var i var-i) (var x var-x)))))
+ (calcFunc-assign
+ (calcFunc-arccosh (var x var-x))
+ (* (neg (var i var-i)) (calcFunc-arccos (var x var-x))))))