Effective analytic functions - Semantic Scholar

Report 2 Downloads 102 Views
Effective analytic functions Joris van der Hoeven

Dépt. de Mathématiques (bât. 425) Université Paris-Sud 91405 Orsay Cedex France Email: [email protected]

August 11, 2003 One approach for computations with special functions in computer algebra is the systematic use of analytic functions whenever possible. This naturally leads to problems of how to answer questions about analytic functions in a fully eective way. Such questions comprise the determination of the radius of convergence or the evaluation of the analytic continuation of the function at the endpoint of a broken like path. In this paper, we propose a rst denition for the notion of an eective analytic function and we show how to eectively solve several types of dierential equations in this context. We will limit ourselves to functions in one variable. Keywords: Complex analysis, computer algebra, algorithm, majorant method. A.M.S. subject classification: 30-04, 34M99.

1. Introduction An important problem in computer algebra is how to compute with special functions which are more complicated than polynomials. A systematic approach to this problem is to recognize that most interesting special functions are analytic, so they are completely determined by their power series expansions at a point. Of course, the concept of special function is a bit vague. One may for instance study expressions which are built up from a nite number of classical special functions, like exp, log or erf. But one may also study larger classes of special functions, such as the solutions to systems of algebraic dierential equations with constant coecients. Let us assume that we have xed a class F of such special functions or expressions for the sequel of this introduction. In order to develop a satisfactory computational theory for the functions or expressions in F , one may distinguish the following main subproblems:  How to test whether f 2 F locally represents the zero power series?  How to evaluate f 2 F safely and eciently at any point where f may be dened? The rst subproblem is called the zero-test problem and it has been studied before in several works [Ris75, DL84, DL89, Kho91, Sha89, Sha93, PG97, SvdH01, vdH02b]. For large classes of special functions, it turns out that the zero-test problem for power series can be reduced to the zero-test problem for constants (see also [vdH01b] for a discussion of this latter problem). 1

2

Effective analytic functions

In this paper, we will focus on the second subproblem, while leaving aside the eciency considerations and restricting our attention to functions in one variable. By safe evaluation of f 2F at z , we mean that we want an algorithm which computes an approximation f~ 2 (Z +i Z)2Z for f (z ) with j f~ ? f (z )j < " for any " 2 2Z. If such an algorithm exists, then we say that f (z ) is an eective complex number. By any point where the expression may be dened, we mean that we do not merely plan to study f near the point where a power series expansion was given, but that we also want to study all possible analytic continuations of f . In other words, the aim of this paper is to develop an eective complex analysis for computations with analytic functions in a class F which we wish to be as large as possible. Such computations mainly consist of safe evaluations, bound computations for convergence radii and absolute values of functions on closed disks, and analytic continuation. Part of the philosophy behind this paper also occurs in [BB85, CC90], but without the joint emphasis on eectiveness at all stages and usefulness from the implementation point of view. In previous papers [vdH99, vdH01a], we have also studied in detail the fast and safe evaluation of holonomic functions. When studying solutions to non-linear dierential equations, one must carefully avoid undecidable problems: Theorem 1. [DL89] Given a power series f =

Pf

n

with rational coecients, which is the unique solution of an algebraic dierential equation P (z; f ;  ; f (l)) = 0; with rational coecients and rational initial conditions, one cannot in general decide whether the radius of convergence ( f ) of f is < 1 or > 1. nz

What show in this paper, is that whenever we know that an analytic function P f wezn will as in the above theorem may be continued analytically along an eective n broken line path , then the value f ( ) of f at the endpoint of is eective (theorem 11). We will also show that we may eectively solve any monic linear dierential equation, without introducing singularities which were not already present in the coecients (theorem 10). In order to prove these results, we will carefully introduce the concept of an eective analytic function in section 2. The idea is that such a function f is given locally at the origin and that we require algorithms for  Computing coecients of the power series expansion;  Computing a lower bound  for the radius of convergence;  Computing an upper bound for j f j on any closed disk of radius < .  Analytic continuation. But we will also require additional conditions, which will ensure that the computed bounds are good enough from a more global point of view. In section 3, we will show that all analytic functions, which are constructed from the eective complex numbers and the d R identity function using + ; ?; ; /; d z ; ;exp and log, are eective. In section 4, we will study the resolution of dierential equations. It is convenient to specify the actual algorithms for computations with eective analytic functions in an object oriented language with abstract data types (like C++). Eective types and functions will be indicated through the use of a sans serif font. We will not detail memory management issues and assume that the garbage collector takes care of this. The Columbus program is a concrete implementation of some of the ideas in this paper [vdH02a], although this program works with double precision instead of eective complex numbers. f=

Joris van der Hoeven

3

2. Effective analytic functions 2.1. Eective numbers and power series

A complex number z 2 C is said to be eective , if there exists an algorithm which takes a positive number 0 < " 2 2Z on input and which returns an approximation z~ 2 (Z + i Z) 2Z for z with jz~ ? z j < ". We will also denote the approximation by z~ = z[[z1;  ; zn]] and j fk ; ;k j 6 gk ; ;k for all k1;  ; kn 2 N. If n = 1 and f 2 AnFunc, then we write f P g if f P g . Given > 0, we also denote b = (1 ? z )?1. 1

n

1

n

4.1. Linear dierential equations

Let L0;  ; Ll ?1 be eective analytic functions and consider the equation f (l) = Ll ?1 f (l ?1) +  + L0 f

(1)

11

Joris van der Hoeven

with initial conditions f (0)(0) = 0;  ; f (l ?1)(0) = l ?1 in Complex. We will show that the unique solution to this equation can again be represented by an eective analytic function f , with Dom f = Dom L0 \  \ Dom Ll ?1. Notice that any linear dierential equation of the form Ll f (l) +  + L0 f = g with Ll(0)  0 can be reduced to the above form (using division by Ll, dierentiation, and linearity if g(0) = 0). We rst notice that the coecients of f may be computed recursively using the equation



f = 0 +

Z  

 l ?1 +

Z 



Ll ?1 f (l ?1) +  + L0 f :

(2)

Assume that M 2 R> and 2 R> are such that Li P M b for all i. Then the equation  Z   Z   ^f = ^0 +  ^l ? 1 + M b f^(l ?1) +  + M b f^ + R; (3) is a majorant equation [vK75, Car61] of (2) for any choices of ^0;  ; ^l ?1 2 R> and R 2 R>[[z ]], such that j0j 6 ^0;  ; jl ?1j 6 ^l ?1. Let h = b( M +1)/ :

We take ^i = C h(i)(0) for all i 2 f0;  ; l ? 1g, where





j0j ;  ; j ?1j : C = max fj0j;  ; jl ?1jg > max h(0) h( ? 1)(0) (0) l

l

Now we observe that

M b h(l ? 1) +  + M b h h i M (M + 1)  (M + (l ? 2) + 1) b( M +l +1)/ +  + b( M + +1)/

P P (M + 1)  (M + (l ? 1) + 1) b M (

= h(l) Therefore, we may take



R = ^0 +

Z  

 ^l ?1 +

+

l +1)/

Z 

M b C h(l ?1) +  + M b C h



? C h 2 R>[[z]]:

This choice ensures that (3) has the particularly simple solution C h. The majorant technique now implies that f P C h. From the algorithmic point of view, let  = min f (L0);  ; (Ll ? 1)g and assume that we want to compute a bound for j fj on Br for some r < . Let  2 (0; 1) \ Real be a xed constant. Then we may apply the above computation for = s?1 with s = r +(  ? r)  and M = max fjL0js ;  ; jLl ?1js g. From the majoration f P C h, we deduce in particular that



jf jr 6 C s ?s r

M (

+1)

s

:

This leads to the following eective solution of (1):

Class LDEAnFunc B AnFunc  L = (L ;  ; Ll ? ) 2 Array(AnFunc)   = ( ;  ; l ? ) 2 Array(Complex)  new: (L~ 2 Array(AnFunc); ~ 2 Array(Complex))  L 3 L~,  3 ~ 0

0

1

1

12

Effective analytic functions

 radius: ()  min ( (L );  ; (Ll ? ))  continue:   LDEAnFunc((L ;  ;  ; Ll ? ; ); (this();  ; this l ? ()) 0

1

0 +

(

1 +

1)

Like in C++, the keyword this stands for the current instance of the data type, which is implicit to the method. The norm method is given by

Method LDEAnFunc ! norm(r) s 3 r +  ( (this) ? r) C 3 max fj j;  ; jl ? jg M 3 max fjL js ;  ; jLl ? js g   0

1

0

Return C

s

s?r

(

M +1)s

1

We have proved the following theorem: Theorem 10. Let L0;  ; Ll ?1 be eective analytic functions and let 0;  ; l ?1 2 Complex. Then there exists a faithful eective analytic solution f to (1) with Dom f = Dom (L1;  ;Ll). In particular, if Dom (L1;  ; Ll) is eective, then so is Dom f.

4.2. Systems of algebraic dierential equations

Let us now consider a system of algebraic dierential equations 0 f 1 0 P (f ;  ; f ) 1 l d @ 1 A = @ 1 1

A dz f P (f ;  ; f ) l

l

1

l

(4)

with initial conditions f1(0) = 1;  ; fl(0) = l in Complex, where P1;  ; Pl are polynomials in l variables with coecients in Complex. Modulo the change of variables fi = i + f~i Pi( f1;  ; fl) = P~i( f~1;  ; f~l) we obtain a new system 1 0 1 0 ~1 ~1( f~1;  ; f~l) P f dB C B C (5) d z @ ~ A = @ ~ ~ ~ A; P l ( f1 ;  ; f l ) fl with initial conditions f~1(0) =  = f~l(0) = 0. Let M > 0 and > 0 be such that P~i(z1;  ; zl) P M b (z1 +  + zl) for all i. Then the system of dierential equations 1 0 1 0 ^1 ^ ^ f b ( f +  + f ) 1 l C dB C B = (6)



A A @ @ dz ^ fl b ( f^1 +  + f^l) with initial conditions f^1(0)=  = f^l(0)=0 is a majorant system of (5). The unique solution of this system therefore satises f~i P f^i for all i. Now the f^i really all satisfy the same rst order equation f^i0 = M bl ( f^i)

13

Joris van der Hoeven

with the same initial condition f^i(0) = 0. The unique solution of this equation is p ^f =  = f^ = 1 ? 1 ? 2 l M z ; 1

l

l

which is a power series with radius of convergence = 1 2l M and positive coecients, so that j f^i(z )j 6 f^i(r) for any r < . As to the implementation, we may x = 1. We will denote the transformed polynomials P~i by P~i = Pi;+ . We will also write kP k1 for the smallest number M 2 R> with P (z1;  ; zl) P M b (z1 +  + zl). The implementation uses a class ADESystem with information about the entire system of equations and solutions and a class ADEAnFunc for each of the actual solutions fi.

Class ADESystem  P = (P ;  ; Pl) 2 Array(Polynomial(Complex; l))   = ( ;  ; l) 2 Array(Complex)  M 2 Real  new: (P~ ; ~)  P 3 P~ ,  3 ~, M 3 max (kP ;  k ;  ; kPl;  k )  component: 1 6 i 6 l  ADEAnFunc(this; i)  continue:   ADESystem(P ; (component(1)();  ; component(l)()) Class ADEAnFunc B AnFunc   2 ADESystem  i 2 f1 ;  ; l g  new: (~; {~)   3 ~, i 3 {~  radius: ()  1/(2 l ( ! M )) p  norm: r  (1 ? 1 ? 2 l r ( ! M ))/l  continue:    ! continue() ! component(i) 1

1

1 +

1

+

1

In contrast with the linear case, the domain of the solution ( f1;  ; fl) to (4) is not necessarily eective. Nevertheless, the solution is faithful: Theorem 11. Let P1;  ; Pl be polynomials with coecients in Complex and let 1;  ; l 2 Complex. Then the system (4) admits a faithful eective analytic solution ( f1;  ; fl). Proof. Let = [1;  ; l] 2 Dom ( f1;  ; fl) \ Path. Let us prove by induction over i = f0;  ; l g that [1;  ; i] 2 Dom] ( f1;  ; fl). For i =0 we have nothing to prove, so assume that i > 0. For all t 2 [0; 1], let

;t = [1;  ; i ?1; t i] ;t = ( f1( ;t);  ; fl ( ;t)) M;t = max (kP1;+; k1;  ; kPl;+; k1) t

t

14

Effective analytic functions

Then M;t is a continuous function, which admits a global maximum M;[0;1] on [0; 1]. Now let 0 w [1;  ; i ?1] be such that 0 2 Dom f and let  0 = (i ? i ?1)/n be such that n 2 N and j 0j < 1/(2 l M;[0;1]). Then we have 00 = 0 +[ 0; n;  0] 2 Dom f and 00 w [1;  ; i]. This proves that [1;  ; i] 2 Dom] ( f1;  ; fl) and we conclude by induction.  Remark 12. In principle, it is possible to replace the algebraic dierential equations

by more general non-linear dierential equations, by taking convergent power series for the Pi. However, this would require the generalization of the theory in this paper to analytic functions in several variables (interesting exceptions are power series which are polynomial in all but one variable, or entire functions). One would also need to handle the transformations Pi  Pi;+ with additional care; these transformations really correspond to the analytic continuation of the Pi.

5. Conclusion and final remarks Using a careful denition of eective analytic functions, we have shown how to answer many numerical problems about analytic solutions to dierential equations. In order to generalize the present theory to analytic functions in several variables or more general analytic functions, like solutions to convolution equations, we probably have to weaken the conditions EA1 and EA2. Nevertheless, it is plausible that further research will lead to a more suitable denition which preserves the spirit of the present one. The Columbus program implements the approach of the present paper in the weaker setting of double precision complex numbers instead of eective complex numbers. We plan to describe this program in more details in a forthcoming paper and in particular the radar algorithm which is used to graphically represent analytic functions (see gure 1). It would be nice to adapt or reimplement the Columbus program so as to permit computations with eective complex numbers when desired.

Figure 1.

Plot of a solution to f 00 = 1+ 4 f 3 + f 0 with the Columbus program.

The implementation of the Columbus program has also been instructive for understanding the complexity of our algorithms. For instance, the lower bound for the smallest zero in our algorithm for inversion can be extremely bad, as in the example 1 f= 1 ? exp (n ? z )

15

Joris van der Hoeven

The problem here is that the eective radius of convergence is of the order of 1, while the real radius is n. Consequently, the analytic continuation from 0 to n ? 1 will take O(n) steps instead of only 1. In the Columbus program, this problem has been solved by using a numerical algorithm in order to determine the radius of convergence instead of the theoretically correct one. In some cases, this leads to an exponential speedup. Theoretically correct approaches for solving the problem are to compute the smallest zero of the denominator in an appropriate radius or to use transseries-like expansions. We plan to explain these approaches in more detail in a forthcoming paper. Another trick which can be used in concrete implementations is to override the default evaluation method from section 2.5 by a more ecient one when possible, or to implement methods for the evaluation or computation of higher derivatives.

Bibliography E. Bishop and D. Bridges. Foundations of constructive analysis . Die Grundlehren der mathematische Wissenschaften. Springer, Berlin, 1985. [Car61] H. Cartan. Théorie élémentaire des fonctions analytiques d'une et plusieurs variables . Hermann, 1961. [CC90] D.V. Chudnovsky and G.V. Chudnovsky. Computer algebra in the service of mathematical physics and number theory (computers in mathematics, stanford, ca, 1986). In Lect. Notes in Pure and Applied Math., volume 125, pages 109232, New-York, 1990. Dekker. [DL84] J. Denef and L. Lipshitz. Power series solutions of algebraic dierential equations. Math. Ann., 267:213238, 1984. [DL89] J. Denef and L. Lipshitz. Decision problems for dierential equations. The Journ. of Symb. Logic , 54(3):941950, 1989. [Kho91] A. G. Khovanskii. Fewnomials . American Mathematical Society, Providence, RI, 1991. [PG97] A. Péladan-Germa. Tests eectifs de nullité dans des extensions d'anneaux diérentiels . PhD thesis, Gage, École Polytechnique, Palaiseau, France, 1997. [Ris75] R.H. Risch. Algebraic properties of elementary functions in analysis. Amer. Journ. of Math., 4(101):743759, 1975. [Sha89] J. Shackell. A dierential-equations approach to functional equivalence. In Proc. ISSAC '89 , pages 710, Portland, Oregon, A.C.M., New York, 1989. ACM Press. [Sha93] J. Shackell. Zero equivalence in function elds dened by dierential equations. Proc. of the A.M.S., 336(1):151172, 1993. [SvdH01] J.R. Shackell and J. van der Hoeven. Complexity bounds for zero-test algorithms. Technical Report 2001-63, Prépublications d'Orsay, 2001. [vdH99] J. van der Hoeven. Fast evaluation of holonomic functions. TCS , 210:199215, 1999. [vdH01a] J. van der Hoeven. Fast evaluation of holonomic functions near and in singularities. JSC , 31:717743, 2001. [vdH01b] J. van der Hoeven. Zero-testing, witness conjectures and dierential diophantine approximation. Technical Report 2001-62, Prépublications d'Orsay, 2001. [vdH02a] Joris van der Hoeven. Columbus. http://www.math.u-psud.fr/~vdhoeven/Columbus/ Columbus.html, 20002002. [vdH02b] Joris van der Hoeven. A new zero-test for formal power series. In Teo Mora, editor, Proc. ISSAC '02 , pages 117122, Lille, France, July 2002. [vdH02c] Joris van der Hoeven. Relax, but don't be too lazy. JSC , 34:479542, 2002. [vdH03] J. van der Hoeven. Majorants for formal power series. Technical Report 2003-15, Université Paris-Sud, 2003. [vK75] S. von Kowalevsky. Zur Theorie der partiellen Dierentialgleichungen. J. Reine und Angew. Math., 80:132, 1875. [BB85]