compute a regular or simple continued fraction expansion
cfrac(ex_numeric, n, con, den, 'quotients')
cfrac(ex_numeric, n, con, den, 'centered', 'quotients')
cfrac(ex_numeric, 'periodic', 'quotients')
cfrac(ex_rat, x, n, form_rational, 'quotients')
cfrac(ex_algebraic, x, n, diag, form_algebraic, 'quotients')
cfrac(ex_algebraic, x=a, n, diag, form_algebraic, 'quotients')
number (rational, float, algebraic, transcendental, real, or complex)
(optional) integer (n+1 is the number of partial quotients)
(optional) unevaluated name (a list of n+1 convergents is assigned)
(optional) unevaluated name (a list of n+1 denominators is assigned)
(optional) literal name; specifies that cfrac compute the list form (a list of two lists: the first list is the pre-period, the second list is the period) for the continued fraction expansion.
(optional) literal name; specifies that cfrac compute a centered form
(optional) literal name; specifies that cfrac compute the simple continued fraction expansion for a quadratic surd ex_numeric
(optional) unevaluated name; a variable in which the continued fraction is expanded
(optional) name: simple, regular, or monic
series or algebraic object
(optional) name: superdiagonal or subdiagonal
(optional) name: simple, semisimple, or simregular
algebraic expression specifying a finite expansion point
continued fraction in fraction form or list form
Important: The numtheory package has been deprecated. Use the superseding command NumberTheory[ContinuedFraction] instead.
The cfrac command computes a continued fraction expansion of a number, rational polynomial, series, or other algebraic expression.
There are at least five forms for continued fraction expansions:
Regular continued fraction:
where, usually, ai and bi for i > 0 are integers or polynomials with integer coefficients. If b0≠0 then it is called superdiagonal, otherwise it is called subdiagonal.
Simple continued fraction:
Simregular continued fraction:
Semisimple continued fraction:
where ei=1, sign⁡bi=1 for i = 1, 2, ...
Monic polynomial continued fraction:
where each bi is a monic polynomial for i = 1, 2, ...
By default, the cfrac command returns the fraction form of the continued fraction. The form used in the previous illustrations (1)-(5) is referred to as the list form.
The list form for a periodic continued fraction is a0,...,am,b1,...,bn, where 0<m, 1<n, a0∈ℤ and a1,…,an>0 describe the preperiod and b1,…,bn>0 represent the period, i.e.,
If you specify the quotients option, the continued fraction is returned in list form. For large continued fractions, this form prints more quickly than the fraction form.
If you specify the n option, at most n + 1 quotients of the continued fraction are computed.
If cfrac is passed a continued fraction, in fraction or list form, it computes the last convergent of the continued fraction. For a periodic continued fraction, it returns the corresponding quadratic surd.
The print routine print/CFRAC is used by the prettyprinter to format the fraction form on screen.
This function is part of the numtheory package, and so can be used in the form cfrac(..) only after performing the command with(numtheory). The function can always be accessed in the long form numtheory[cfrac](..).
The cfrac command computes a continued fraction expansion for three kinds of input:
Series or algebraic objects
Numerical Case: Simple and Centered Continued Fraction
The cfrac(ex_numeric) calling sequence returns a fraction form of the continued fraction for the real or complex number ex_numeric.
If ex_numeric is a complex number, cfrac returns a continued fraction expansion if and only if that expansion is finite. (There are many different definitions of continued fractions for complex numbers.)
If you specify the con option, cfrac assigns a list containing the convergents to that name.
If you specify the den option, cfrac assigns a list containing the denominators to that name.
If you specify the periodic option, cfrac computes a continued fraction for the quadratic surd ex_numeric. None of the other optional arguments (n, con, den) can be specified in this case.
Rational Polynomial Case
The cfrac(ex_rat) calling sequence returns a fraction form of the continued fraction for the rational polynomial ex_rat.
You can specify the form of the resulting continued fraction using the form_rational option (simple, regular, or monic). By default, cfrac returns the simple continued fraction form.
Applying the cfrac command to a finite simple continued fraction (fraction form or list form) returns the original rational polynomial.
Series and Algebraic Object Cases
The cfrac(ex_algebraic) calling sequence returns a superdiagonal continued fraction approximation for the series or algebraic object ex_algebraic that is equal to the k,k or k,k−1 Pade approximant (depending on the parity of the order n if specified).
Using the cfrac(ex_algebraic, x=a) calling sequence, you can specify an expansion point. The continued fraction will be expressed in terms of powers of x−a.
If you specify the subdiagonal option, cfrac computes the continued fraction equivalent to the k,k or k−1,k Pade approximant.
You can specify the form of the resulting continued fraction using the form_algebraic option (simple, semisimple, or simregular). By default, cfrac returns the simple continued fraction form.
The optional arguments con and den can be used in conjunction with the option centered as of Maple 16.
The argument ex_cf can be a periodic continued fraction as of Maple 16.
The a parameter was introduced in Maple 16.
The ex_cf parameter was updated in Maple 16.
For more information on Maple 16 changes, see Updates in Maple 16.
Download Help Document
What kind of issue would you like to report? (Optional)