274
Appendix A: System Routines — Algebra Utilities
TI
-
89 / TI
-
92 Plus Developer Guide
Not for Distribution
Beta Version January 26, 2001
push_dependent_factors
Declaration:
void
push_dependent_factors
(EStackIndex
i
, EStackIndex
var
)
Category(ies):
Algebra Utilities
Description:
Pushes onto the estack the product of all top-level syntactic factors of the
expression indexed by
i
that are dependent on the variable or kernel
indexed by
var
. If there are no dependent factors, pushes Float1 if
IS_ARITH_APPROX is true and Integer1 if IS_ARITH_APPROX is false.
Inputs:
i
— Indexes the top tag of an internally-simplified algebraic
expression.
var
— Indexes 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_independent_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:
void push_dependent_factors (EStackIndex i, EStackIndex var)
/* Pushes onto the estack the product of all factors of the term
indexed by i that are dependent on the kernel indexed by var.
*/
{ if (MULTIPLY_TAG == ESTACK (i))
{ push_dependent_factors (next_expression_index (--i), var);
if (is_independent_of (i, var))
return;
else
times_top (i);
}
else if (is_independent_of (i, var))
push1 ();
else push_expression (i);
}