diff options
| -rw-r--r-- | lisp/calc/calc-poly.el | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/lisp/calc/calc-poly.el b/lisp/calc/calc-poly.el index e27705de98a..4714b2f7d38 100644 --- a/lisp/calc/calc-poly.el +++ b/lisp/calc/calc-poly.el | |||
| @@ -1069,25 +1069,18 @@ | |||
| 1069 | (math-add-or-sub (list '/ (nth 1 (nth 1 expr)) (nth 2 expr)) | 1069 | (math-add-or-sub (list '/ (nth 1 (nth 1 expr)) (nth 2 expr)) |
| 1070 | (list '/ (nth 2 (nth 1 expr)) (nth 2 expr)) | 1070 | (list '/ (nth 2 (nth 1 expr)) (nth 2 expr)) |
| 1071 | nil (eq (car (nth 1 expr)) '-))) | 1071 | nil (eq (car (nth 1 expr)) '-))) |
| 1072 | ((and (eq calc-matrix-mode 'matrix) | ||
| 1073 | (eq (car-safe expr) '^) | ||
| 1074 | (natnump (nth 2 expr)) | ||
| 1075 | (> (nth 2 expr) 1) | ||
| 1076 | (memq (car-safe (nth 1 expr)) '(+ -))) | ||
| 1077 | (if (= (nth 2 expr) 2) | ||
| 1078 | (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (nth 1 expr)) | ||
| 1079 | (list '* (nth 2 (nth 1 expr)) (nth 1 expr)) | ||
| 1080 | nil (eq (car (nth 1 expr)) '-)) | ||
| 1081 | (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (list '^ (nth 1 expr) | ||
| 1082 | (1- (nth 2 expr)))) | ||
| 1083 | (list '* (nth 2 (nth 1 expr)) (list '^ (nth 1 expr) | ||
| 1084 | (1- (nth 2 expr)))) | ||
| 1085 | nil (eq (car (nth 1 expr)) '-)))) | ||
| 1086 | ((and (eq (car-safe expr) '^) | 1072 | ((and (eq (car-safe expr) '^) |
| 1087 | (memq (car-safe (nth 1 expr)) '(+ -)) | 1073 | (memq (car-safe (nth 1 expr)) '(+ -)) |
| 1088 | (integerp (nth 2 expr)) | 1074 | (integerp (nth 2 expr)) |
| 1089 | (if (and (eq calc-matrix-mode 'matrix) | 1075 | (if (and |
| 1090 | (> (nth 2 expr) 1)) | 1076 | (or (math-known-matrixp (nth 1 (nth 1 expr))) |
| 1077 | (math-known-matrixp (nth 2 (nth 1 expr))) | ||
| 1078 | (and | ||
| 1079 | calc-matrix-mode | ||
| 1080 | (not (eq calc-matrix-mode 'scalar)) | ||
| 1081 | (not (and (math-known-scalarp (nth 1 (nth 1 expr))) | ||
| 1082 | (math-known-scalarp (nth 2 (nth 1 expr))))))) | ||
| 1083 | (> (nth 2 expr) 1)) | ||
| 1091 | (if (= (nth 2 expr) 2) | 1084 | (if (= (nth 2 expr) 2) |
| 1092 | (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (nth 1 expr)) | 1085 | (math-add-or-sub (list '* (nth 1 (nth 1 expr)) (nth 1 expr)) |
| 1093 | (list '* (nth 2 (nth 1 expr)) (nth 1 expr)) | 1086 | (list '* (nth 2 (nth 1 expr)) (nth 1 expr)) |