Appendix A: System Routines — Algebra Utilities
279
TI
-
89 / TI
-
92 Plus Developer Guide
Not for Distribution
Beta Version January 26, 2001
push_independent_factors
Declaration:
void
push_independent_factors
(EStackIndex
i
, EStackIndex
var
)
Category(ies):
Algebra Utilities
Description:
Pushes onto the estack the product of all syntactic factors of the
expression indexed by
i
that are independent of the variable or kernel
indexed by
var
. If there are no independent factors, pushes Float1 if
IS_ARITH_APPROX is true and Integer1 if IS_ARITH_APPROX is false.
Inputs:
i
— Index of the top tag of an internally-simplified algebraic
expression.
var
— Index of the top tag of an internally-simplified variable or kernel.
Outputs:
None
Assumptions:
None
Side Effects:
None
Availability:
On AMS 2.02 and higher.
TI
-
89 / TI
-
92 Plus
Differences:
None
See Also: push_dependent_factors, push_constant_factors,
push_nonconstant_factors, push_nonnumeric_factors,
numeric_factor_index, push_but_factor,
index_rmng_fctrs_start_base, index_rmng_fctrs_start_base_tag,
index_rmng_fctrs_start_fctr_tag, index_rmng_factor
Example:
push_quantum (PI_TAG);
k = top_estack;
push_quantum (8u); /* Push variable x */
replace_top2_with_prod (k);
k = top_estack;
push_quantum (9u);
j = top_estack; /* Push variable y */
push_ln (j); /* Push ln(y); */
replace_top2_with_prod(j); /* top_estack -> ln(y) * y */
replace_top2_with_prod(k);
k = top_estack; /* top_estack -> x * ln(y) * y * pi */
push_quantum (9u); /* Push y */
push_independent_factors (k, top_estack); /* Pushes x * pi */