HP Prime: Basic CAS
Commands for Polynomials and Rational Expressions
Define the following variables:
poly: a polynomial of
the form a_n*x^n + a_n-1*x^(n-1) + …. + a_1*x + a_0
rat: a rational
function consisting of the polynomials p(x)/q(x)
var: variable
Simplification Modes
Before we start, I want to comment on simplification modes.
Simplification Modes:
None: No
simplification is executed
Minimum: Simple simplification
of results. Additional simplification
may be desired.
Maximum: Full
simplification of results
Below is a comparison between Minimum and Maximum modes.
To change Simplification mode, press [Shift], [CAS] (CAS
Settings), and select a Simplification settings. Select the Simplification drop down box and
select the desired mode.
Note: The following
examples are executed in Maximum simplification mode.
Part Extraction:
Coefficients, Numerator, Denominator
Coefficients
coef: [Toolbox],
(CAS), 6. Polynomial, 2. Coefficients
Syntax:
coef(poly, var):
returns all the coefficients of a polynomial in a vector
coef(poly, var, n): return the coefficient of a polynomial
in a vector of the specific power x^n
Examples:
coef(2x^2 + 3x – 1, x) returns [2, 3, -1]
coef(2x^2 + 3x – 1, x, 2) returns 2
coef(2x^2 + 3x – 1, x, 1) returns 3
coef(2x^2 + 3x – 1, x, 0) returns -1
Numerator and Denominator
numer: [Toolbox], (CAS), 1. Algebra, 8. Extract, 1. Numerator
denom: [Toolbox], (CAS), 1. Algebra, 8. Extract, 2.
Denominator
Syntax:
numer(rat)
denom(rat)
Example:
f≔(2x^2-3)/(x^2+1)
numer(f) returns 2*x^2 – 3
denom(f) returns x^2 + 1
purge(f) \\ this is to erase f
Polynomial Creation
Create a symbolic polynomial with a list of coefficients
poly2symb: [Toolbox], (CAS), 6. Polynomial, 7. Create, 2. Coefs→Poly
Syntax:
poly2symb(vector of coefficients, var)
Example:
poly2symb( [8, -1, 0, 6], t) returns 8*t^3 – t^2 + 6
The inverse operation is the symb2poly(poly), which can be
accessed by [Toolbox], (CAS), 6. Polynomial, 7. Create, 1. Poly→Create.
Create a polynomial from a list of roots
This involves a two-step processes:
1. pcoeff( vector of roots )
2. poly2symb( result from step 1, var )
Access pcoeff: [Toolbox], (CAS), 6. Polynomial, 7. Create,
3. Roots → Coef
You can combine the two steps by typing: poly2symb(pcoeff( vector of roots), var). Simplification may be required
Example:
pcoeff([-2, 5, 0, 6]) returns [1, -9, 8, 60, 0]
poly2symb([1, -9, 8, 60, 0],t) returns t^4 – 9*t^3 +8*t^2 +
60*t
poly2symb( pcoeff([2, -5, 0, 6]), t) returns
t^4 – 9*t^3 +
8*t^2 + 60*t
Degree of a Polynomial
degree: [Toolbox], (CAS), 6, Polynomial, 8. Algebra, 3.
Degree
Syntax:
degree(poly)
Example:
f: = 4*x^3 – 2*x^2 + 8*x – 8
degree(f) returns 3
You can factor a polynomial by x^n where n is the degree of
the polynomial by using factor_xn.
factor_xn: [Toolbox],
(CAS), 6. Polynomial, 8. Algebra, 4. Factor By Degree
Caution: This command
works when the Simplification mode is turned to Minimum or Off.
Example:
(after turning Simplification to Minimum)
factor_xn(f) returns x^3 * (4 – 2/x + 8/x^2 – 8/x^3)
purge(f)
Partial Fraction of Rational Functions
partfrac: [Toolbox], (CAS), 1. Algebra, 7. Partial Fraction
Syntax:
partfrac(rat)
Example:
partfrac( (x^4 – 3*x^3)/(x^2 -1) ) returns
x^2
-3*x + 1 - 1/(x-1) - 2/(x+1)
Determining the Number of Zeros (Roots)
The sturmab command determines the number of zeros giving an
interval.
sturmab: [Toolbox],
(CAS), 6. Polynomial, 8. Algebra, 6.
Zero Count
Syntax:
sturmab(poly, var, min, max)
The min and max can be complex numbers.
Examples:
sturmab(x^3 – 4*x^2 + 6*x – 4, x, -5, 5) returns 1 \\ 1 real root
sturmab(x^3 – 4*x^2 + 6*x – 4, x, -5-5*i, 5+5*i) returns 3 \\ 1 real, 2 complex roots
Polynomial Functions
Path: [Toolbox], (CAS), 6, Polynomial, 9. Special, then:
4. Hermite \\
Syntax: hermite(n)
7. Legendre \\
Syntax: legendre(n)
8. Chebyshev Tn (1st
Kind) \\ Syntax: tchebyshev1(n)
9. Chebyshev Un (2nd
Kind) \\ Syntax: tchebyshev2(n)
Where n is an integer.
You can specify a variable by adding var as a second argument. (x is the
default variable)
Examples:
hermite(4) returns 16*x^4 – 48*x^2 + 12
legendre(4) returns (35*x^4 – 30*x^3 + 3)/8
tchebyshev1(4) returns 8*x^4 – 8*x^2 + 1
tchebyshev2(4) returns 16*x^4 – 12*x^2 + 1
This covers some of the basic CAS commands for polynomials
and rational functions. Hope you find
this helpful,
Eddie
This blog is property of Edward Shore, 2016.
‘