3 |
;; Copyright (C) 1990, 1991, 1992, 1993, 2001 Free Software Foundation, Inc. |
;; Copyright (C) 1990, 1991, 1992, 1993, 2001 Free Software Foundation, Inc. |
4 |
|
|
5 |
;; Author: David Gillespie <daveg@synaptics.com> |
;; Author: David Gillespie <daveg@synaptics.com> |
6 |
;; Maintainers: D. Goel <deego@gnufans.org> |
;; Maintainer: Jay Belanger <belanger@truman.edu> |
|
;; Colin Walters <walters@debian.org> |
|
7 |
|
|
8 |
;; This file is part of GNU Emacs. |
;; This file is part of GNU Emacs. |
9 |
|
|
1318 |
|
|
1319 |
;; The variable math-expr-parts is local to math-expr-rational-in, |
;; The variable math-expr-parts is local to math-expr-rational-in, |
1320 |
;; but is used by math-expr-rational-in-rec |
;; but is used by math-expr-rational-in-rec |
1321 |
|
(defvar math-expr-parts) |
1322 |
|
|
1323 |
(defun math-expr-rational-in (expr) |
(defun math-expr-rational-in (expr) |
1324 |
(let ((math-expr-parts nil)) |
(let ((math-expr-parts nil)) |
2279 |
;; math-decompose-poly, but used by math-solve-poly-funny-powers.) |
;; math-decompose-poly, but used by math-solve-poly-funny-powers.) |
2280 |
(defvar math-solve-lhs) |
(defvar math-solve-lhs) |
2281 |
(defvar math-solve-rhs) |
(defvar math-solve-rhs) |
2282 |
|
(defvar math-try-solve-sign) |
2283 |
|
|
2284 |
(defun math-try-solve-for |
(defun math-try-solve-for |
2285 |
(math-solve-lhs math-solve-rhs &optional math-try-solve-sign no-poly) |
(math-solve-lhs math-solve-rhs &optional math-try-solve-sign no-poly) |
2566 |
;;; This deals with negative, fractional, and symbolic powers of "x". |
;;; This deals with negative, fractional, and symbolic powers of "x". |
2567 |
;; The variable math-solve-b is local to math-decompose-poly, |
;; The variable math-solve-b is local to math-decompose-poly, |
2568 |
;; but is used by math-solve-poly-funny-powers. |
;; but is used by math-solve-poly-funny-powers. |
2569 |
|
(defvar math-solve-b) |
2570 |
|
|
2571 |
(defun math-solve-poly-funny-powers (sub-rhs) ; uses "t1", "t2" |
(defun math-solve-poly-funny-powers (sub-rhs) ; uses "t1", "t2" |
2572 |
(setq math-t1 math-solve-lhs) |
(setq math-t1 math-solve-lhs) |
2800 |
;; The variables math-int-scale, math-int-factors and math-double-roots |
;; The variables math-int-scale, math-int-factors and math-double-roots |
2801 |
;; are local to math-poly-all-roots, but are used by math-poly-integer-root. |
;; are local to math-poly-all-roots, but are used by math-poly-integer-root. |
2802 |
(defvar math-int-scale) |
(defvar math-int-scale) |
2803 |
|
(defvar math-int-factors) |
2804 |
|
(defvar math-double-roots) |
2805 |
|
|
2806 |
(defun math-poly-all-roots (var p &optional math-factoring) |
(defun math-poly-all-roots (var p &optional math-factoring) |
2807 |
(catch 'ouch |
(catch 'ouch |
3140 |
|
|
3141 |
;; The variable math-solve-simplifying is local to math-solve-system |
;; The variable math-solve-simplifying is local to math-solve-system |
3142 |
;; and math-solve-system-rec, but is used by math-solve-system-subst. |
;; and math-solve-system-rec, but is used by math-solve-system-subst. |
3143 |
|
(defvar math-solve-simplifying) |
3144 |
|
|
3145 |
(defun math-solve-system (exprs math-solve-vars math-solve-full) |
(defun math-solve-system (exprs math-solve-vars math-solve-full) |
3146 |
(setq exprs (mapcar 'list (if (Math-vectorp exprs) |
(setq exprs (mapcar 'list (if (Math-vectorp exprs) |