234
Appendix A: System Routines — Algebra Utilities
TI
-
89 / TI
-
92 Plus Developer Guide
Not for Distribution
Beta Version January 26, 2001
did_push_lincf
Declaration:
Boolean
did_push_lincf
(EStackIndex
i
, EStackIndex
vi
)
Category(ies):
Algebra Utilities
Description:
Determines if the expression indexed by
i
is not linear in the variable
indexed by
vi
.
Inputs:
i
— Index of the top tag of an internally-simplified expression.
vi
— Index of the top tag of a variable.
Outputs:
Returns FALSE if the expression indexed by
i
is not linear in the variable
indexed by
vi
. Otherwise pushes the coefficient of
vi
(perhaps 0), then
returns TRUE.
Assumptions:
None
Side Effects:
None
Availability:
All versions of the TI
-
89 / TI
-
92 Plus.
TI
-
89 / TI
-
92 Plus
Differences:
None
See Also: push_poly_deg_in_var_or_kernel, linear_degree,
index_if_pushed_binomial_info, index_if_pushed_qquad_info
Example:
If
i
indexes (x^2
†
y + x + y)
†
z and
vi
indexes y, then
did_push_lincf
(
i
,
vi
)
pushes (x^2 + y)
†
z and returns TRUE.
Boolean did_push_recip_lincf (EStackIndex i, EStackIndex vi)
/* If the expression indexed by i is linear in the variable indexed by vi,
pushes the reciprocal of the linear coefficient then returns TRUE.
Otherwise returns FALSE.
*/
{ if (did_push_lincf (i, vi))
{ replace_top_with_reciprocal ();
return TRUE;
}
return FALSE;
}