This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Computing Limits of Quotients of Multivariate Real Analytic Functions

Adam Strzeboński Wolfram Research Inc., 100 Trade Centre Drive, Champaign, IL 61820, U.S.A. [email protected]
(Date: January 31, 2021)
Abstract.

We present an algorithm for computing limits of quotients of real analytic functions. The algorithm is based on computation of a bound on the Łojasiewicz exponent and requires the denominator to have an isolated zero at the limit point.

Keywords:

Multivariate function limit, symbolic limit computation.

1. Introduction

Computation of limits is one of the basic problems of computational calculus. In the univariate case computing limits of rational functions is easy, and the state of the art limit computation algorithms [3, 6] are applicable to large classes of functions. In the multivariate case computing limits of real rational functions is a nontrivial problem that has been a subject of recent research [1, 2, 8, 9, 10]. In [7] we compared five methods for computation of limits of real rational functions based on the Cylindrical Algebraic Decomposition (CAD) algorithm. Here we extend the methods to computation of limits of quotients of multivariate analytic functions.

The limit of a real function may not exist, however the lower limit and the upper limit always exist. A weak version of the limit computation problem consists of deciding whether the limit exists and, if it does, finding the value of the limit. A strong version consists of finding the values of the lower limit and the upper limit.

Let us state the problems precisely. Denote x=(x1,,xn)x=(x_{1},\ldots,x_{n}), ¯={,}\bar{\mathbb{R}}=\mathbb{R}\cup\{-\infty,\infty\}. Let UnU\subseteq\mathbb{R}^{n} be an open set and let 𝒜(U)\mathcal{A}(U) denote the set of analytic functions on UU. Let g𝒜(U)g\in\mathcal{A}(U), h𝒜(U){0}h\in\mathcal{A}(U)\setminus\{0\}, D={uU:h(u)0}D=\{u\in U\>:\>h(u)\neq 0\}, f:Dug(u)h(u)f:D\ni u\rightarrow\frac{g(u)}{h(u)}\in\mathbb{R}, and let cUc\in U.

Problem 1.

Find l¯l\in\bar{\mathbb{R}} such that l=limucf(u)l=\lim_{u\rightarrow c}f(u) or prove that such ll does not exist.

Problem 2.

Find l1,l2¯l_{1},l_{2}\in\bar{\mathbb{R}} such that l1=lim infucf(u)l_{1}=\liminf_{u\rightarrow c}f(u) and l2=lim supucf(u)l_{2}=\limsup_{u\rightarrow c}f(u).

Example 3.

Let g=sin(x2+y2+z2)g=\sin(x^{2}+y^{2}+z^{2}) and h=3cosxcosycoszh=3-\cos x-\cos y-\cos z. Then

lim(x,y,z)0g(x,y,z)h(x,y,z)=2\lim_{(x,y,z)\rightarrow 0}\frac{g(x,y,z)}{h(x,y,z)}=2
Example 4.

Let g=sin(xy)g=\sin(xy) and h=cosx+cosy2h=\cos x+\cos y-2. Then

lim inf(x,y)0g(x,y)h(x,y)\displaystyle\liminf_{(x,y)\rightarrow 0}\frac{g(x,y)}{h(x,y)} =\displaystyle= 1\displaystyle-1
lim sup(x,y)0g(x,y)h(x,y)\displaystyle\limsup_{(x,y)\rightarrow 0}\frac{g(x,y)}{h(x,y)} =\displaystyle= 1\displaystyle 1

and lim(x,y)0g(x,y)h(x,y)\lim_{(x,y)\rightarrow 0}\frac{g(x,y)}{h(x,y)} does not exist.

Refer to caption
Figure 1.1. The lower and the upper limit of z=sin(xy)cosx+cosy2z=\frac{\sin(xy)}{\cos x+\cos y-2} at 0.

Recently two algorithms partially solving Problem 1 for rational functions have been proposed. The algorithm presented in [9] solves a modified version of the problem, namely it decides whether the limit exists and is finite. The negative answer includes both the case when the limit does not exist and the case when the limit exists and is infinite. The algorithm uses Wu’s elimination method, rational univariate representations, and requires adjoining two infinitesimal elements to the field. The algorithm presented in [1] (which generalizes algorithms of [2, 8]) solves Problem 1 under the additional assumption that cc is an isolated zero of hh. The authors use the theory of Lagrange multipliers to reduce the problem to computing the limit along a real algebraic set, and solve the reduced problem using regular chains methods.

In [7] we presented five methods based on the CAD algorithm that solve both Problem 1 and Problem 2 for arbitrary rational functions. In this note we describe an algorithm that reduces computation of limits of quotients of multivariate analytic functions to computation of limits of rational functions. The algorithm can be combined with any of the algorithms described in [7] to solve both Problem 1 and Problem 2 for quotients of analytic functions.

2. The Algorithm

Let f=ghf=\frac{g}{h}, where gg and hh are analytic functions in a neighbourhood of cnc\in\mathbb{R}^{n}. Without loss of generality we will assume that c=0c=0. If h(0)0h(0)\neq 0 then ff is continuous at 0, and hence the limit can be obtained by evaluation. Therefore w.l.o.g. we will assume that h(0)=0h(0)=0. The only computability assumption we make about functions gg and hh is that for any dd\in\mathbb{N} we can compute the Taylor polynomials TdgT_{d}g and TdhT_{d}h of total degree dd. This is a typical case in a computer algebra system, where gg and hh are given as expressions obtained by composing analytic functions implemented in the system. Taylor polynomials of arbitrary degree can be readily computed, but for instance algorithms for testing whether an expression represents a function that is identically zero may not be available.

Remark 5.

This specification is not sufficient to always solve Problem 1 or 2. For instance, let φk=x2+y2k\varphi_{k}=x^{2}+y^{2k}, let φ=x2\varphi_{\infty}=x^{2}, and suppose that gg and hh are expressions that as functions (but not as expressions) satisfy equalities g=φkg=\varphi_{k} and h=φmh=\varphi_{m} for some (unknown) k,m{}k,m\in\mathbb{N}\cup\{\infty\}. If k=mk=m then lim(x,y)0g(x,y)h(x,y)=1\lim_{(x,y)\rightarrow 0}\frac{g(x,y)}{h(x,y)}=1 otherwise the limit does not exist. Suppose that no algorithms are available that would simplify gg and hh to explicit polynomials. Computation of the Taylor polynomials TdgT_{d}g and TdhT_{d}h for any finite dd does not allow to decide whether kk and mm are finite, but greater than d/2d/2, or are infinite. Hence Problem 1 or 2 cannot always be solved. Similarly, we cannot always decide whether the zero of hh at (0,0)(0,0) is isolated.

The algorithm we present here solves Problem 1 and 2 if hh has an isolated zero at 0. Otherwise the algorithm does not terminate. Considering Remark 5, this is the best we can hope for with the given input specification.

Let UnU\subseteq\mathbb{R}^{n} be an open neighbourhood of 0, and let u\|u\| denote the Euclidean norm of unu\in\mathbb{R}^{n}. The algorithm is based on the following theorem, which is a special case of the Łojasiewicz inequality [5].

Theorem 6.

Let h𝒜(U)h\in\mathcal{A}(U) and suppose that {u:u<ρh(u)=0}={0}\{u\>:\>\|u\|<\rho\wedge h(u)=0\}=\{0\} for some ρ>0\rho>0. Then there exist positive constants rr, cc, and α\alpha such that if u<r\|u\|<r then |h(u)|cuα\lvert h(u)\rvert\geq c\|u\|^{\alpha}.

Algorithm 7.

(MLIM)
Input: g𝒜(U)g\in\mathcal{A}(U), h𝒜(U){0}h\in\mathcal{A}(U)\setminus\{0\}, such that h(0)=0h(0)=0.
Output: lim infu0g(u)h(u)\liminf_{u\rightarrow 0}\frac{g(u)}{h(u)}.

  1. (1)

    Set d=2d=2.

  2. (2)

    Compute limu0u12d++un2dT2d1h(u)\lim_{u\rightarrow 0}\frac{u_{1}^{2d}+\cdots+u_{n}^{2d}}{T_{2d-1}h(u)}.

  3. (3)

    If the limit does not exist or is not zero, set d=d+1d=d+1 and go to step (2)(2).

  4. (4)

    Return lim infu0T2d1g(u)T2d1h(u)\liminf_{u\rightarrow 0}\frac{T_{2d-1}g(u)}{T_{2d-1}h(u)}.

Theorem 8.

If hh has an isolated zero at 0 then Algorithm 7 terminates and returns

lim infu0g(u)h(u)\liminf_{u\rightarrow 0}\frac{g(u)}{h(u)}

Otherwise the algorithm does not terminate.

Proof.

Suppose that hh has an isolated zero at 0. By Theorem 6 there exist positive constants rr, cc, and α\alpha such that if u<r\|u\|<r then |h(u)|cuα\lvert h(u)\rvert\geq c\|u\|^{\alpha}. To prove that Algorithm 7 terminates it suffices to show that if 2d>α2d>\alpha then

limu0u12d++un2dT2d1h(u)=0\lim_{u\rightarrow 0}\frac{u_{1}^{2d}+\cdots+u_{n}^{2d}}{T_{2d-1}h(u)}=0

Let R2d1h(u)=h(u)T2d1h(u)R_{2d-1}h(u)=h(u)-T_{2d-1}h(u). We have

u12d++un2d|T2d1h(u)|u2d|h(u)R2d1h(u)|1||h(u)|u2d|R2d1h(u)|u2d|\frac{u_{1}^{2d}+\cdots+u_{n}^{2d}}{\lvert T_{2d-1}h(u)\rvert}\leq\frac{\|u\|^{2d}}{\lvert h(u)-R_{2d-1}h(u)\rvert}\leq\frac{1}{\lvert\frac{\lvert h(u)\rvert}{\|u\|^{2d}}-\frac{\lvert R_{2d-1}h(u)\rvert}{\|u\|^{2d}}\rvert}

Since R2d1h(u)R_{2d-1}h(u) is an analytic function whose Taylor series does not contain terms of degree lower than 2d2d, |R2d1h(u)|u2d\frac{\lvert R_{2d-1}h(u)\rvert}{\|u\|^{2d}} is bounded in a neighbourhood of 0. Moreover, if u<r\|u\|<r,

|h(u)|u2dcuαu2d=cuα2du0\frac{\lvert h(u)\rvert}{\|u\|^{2d}}\geq\frac{c\|u\|^{\alpha}}{\|u\|^{2d}}=c\|u\|^{\alpha-2d}\underset{u\rightarrow 0}{\longrightarrow}\infty

hence

limu01||h(u)|u2d|R2d1h(u)|u2d|=0\lim_{u\rightarrow 0}\frac{1}{\lvert\frac{\lvert h(u)\rvert}{\|u\|^{2d}}-\frac{\lvert R_{2d-1}h(u)\rvert}{\|u\|^{2d}}\rvert}=0

which proves that

limu0u12d++un2dT2d1h(u)=0\lim_{u\rightarrow 0}\frac{u_{1}^{2d}+\cdots+u_{n}^{2d}}{T_{2d-1}h(u)}=0

To show that Algorithm 7 returns lim infu0g(u)h(u)\liminf_{u\rightarrow 0}\frac{g(u)}{h(u)} note that

g(u)h(u)=T2d1g(u)+R2d1g(u)T2d1h(u)+R2d1h(u)=T2d1g(u)T2d1h(u)+R2d1g(u)T2d1h(u)1+R2d1h(u)T2d1h(u)\frac{g(u)}{h(u)}=\frac{T_{2d-1}g(u)+R_{2d-1}g(u)}{T_{2d-1}h(u)+R_{2d-1}h(u)}=\frac{\frac{T_{2d-1}g(u)}{T_{2d-1}h(u)}+\frac{R_{2d-1}g(u)}{T_{2d-1}h(u)}}{1+\frac{R_{2d-1}h(u)}{T_{2d-1}h(u)}}

We have

R2d1g(u)T2d1h(u)=R2d1g(u)u2du2dT2d1h(u)\frac{R_{2d-1}g(u)}{T_{2d-1}h(u)}=\frac{R_{2d-1}g(u)}{\|u\|^{2d}}\frac{\|u\|^{2d}}{T_{2d-1}h(u)}

Since R2d1g(u)R_{2d-1}g(u) is an analytic function whose Taylor series does not contain terms of degree lower than 2d2d, |R2d1g(u)|u2d\frac{\lvert R_{2d-1}g(u)\rvert}{\|u\|^{2d}} is bounded in a neighbourhood of 0. Moreover,

u2d|T2d1h(u)|ndu12d++un2d|T2d1h(u)|u00\frac{\|u\|^{2d}}{\lvert T_{2d-1}h(u)\rvert}\leq n^{d}\frac{u_{1}^{2d}+\cdots+u_{n}^{2d}}{\lvert T_{2d-1}h(u)\rvert}\underset{u\rightarrow 0}{\longrightarrow}0

hence

limu0R2d1g(u)T2d1h(u)=0\lim_{u\rightarrow 0}\frac{R_{2d-1}g(u)}{T_{2d-1}h(u)}=0

Similarly

limu0R2d1h(u)T2d1h(u)=0\lim_{u\rightarrow 0}\frac{R_{2d-1}h(u)}{T_{2d-1}h(u)}=0

and therefore

lim infu0g(u)h(u)=lim infu0T2d1g(u)T2d1h(u)\liminf_{u\rightarrow 0}\frac{g(u)}{h(u)}=\liminf_{u\rightarrow 0}\frac{T_{2d-1}g(u)}{T_{2d-1}h(u)}

Suppose now that the zero of hh at 0 is not isolated. Let d2d\geq 2.

If the zero of T2d1hT_{2d-1}h at 0 is not isolated, then

u12d++un2dT2d1h(u)\frac{u_{1}^{2d}+\cdots+u_{n}^{2d}}{T_{2d-1}h(u)}

attains arbitrarily large values in any neighbourhood of 0, and hence

limu0u12d++un2dT2d1h(u)\lim_{u\rightarrow 0}\frac{u_{1}^{2d}+\cdots+u_{n}^{2d}}{T_{2d-1}h(u)}

does not exist or is not zero.

If the zero of T2d1hT_{2d-1}h at 0 is isolated, then {u:uρT2d1h(u)=0}={0}\{u\>:\>\|u\|\leq\rho\wedge T_{2d-1}h(u)=0\}=\{0\} for some ρ>0\rho>0. Since R2d1h(u)R_{2d-1}h(u) is an analytic function whose Taylor series does not contain terms of degree lower than 2d2d, there exists M>0M>0 such that |R2d1h(u)|u2dM\frac{\lvert R_{2d-1}h(u)\rvert}{\|u\|^{2d}}\leq M for all uρ\|u\|\leq\rho. Let Z={u:uρh(u)=0}Z=\{u\>:\>\|u\|\leq\rho\wedge h(u)=0\}. For uZ{0}u\in Z\setminus\{0\} we have

T2d1h(u)=R2d1h(u)T_{2d-1}h(u)=-R_{2d-1}h(u)

and hence

u12d++un2d|T2d1h(u)|ndu2d|R2d1h(u)|ndM1>0\frac{u_{1}^{2d}+\cdots+u_{n}^{2d}}{\lvert T_{2d-1}h(u)\rvert}\geq n^{-d}\frac{\|u\|^{2d}}{\lvert R_{2d-1}h(u)\rvert}\geq n^{-d}M^{-1}>0

Since 0 is a limit point of Z{0}Z\setminus\{0\},

limu0u12d++un2dT2d1h(u)\lim_{u\rightarrow 0}\frac{u_{1}^{2d}+\cdots+u_{n}^{2d}}{T_{2d-1}h(u)}

does not exist or is not zero. Therefore Algorithm 7 does not terminate. ∎

Remark 9.

Algorithm 7 can be adapted to compute the upper limit or the limit of f(u)f(u) by returning the upper limit or the limit of T2d1g(u)T2d1h(u)\frac{T_{2d-1}g(u)}{T_{2d-1}h(u)} in step (4)(4).

Example 10.

Algorithm 7 may not stop for the first dd such that T2d1hT_{2d-1}h has an isolated zero at 0, even if T2d1h=hT_{2d-1}h=h. Let h(x,y)=(xn)2+(xyn)2h(x,y)=(x^{n})^{2}+(x-y^{n})^{2} (cf. [4], Example 1). Then T2d1h=hT_{2d-1}h=h for dn+1d\geq n+1. However, since h(tn,t)=t2n2h(t^{n},t)=t^{2n^{2}}

limu0x2d+y2dT2d1h(x,y)\lim_{u\rightarrow 0}\frac{x^{2d}+y^{2d}}{T_{2d-1}h(x,y)}

will not be zero for any dn2d\leq n^{2}.

Example 11.

The second part of the proof does need two cases, that is the zero of T2d1hT_{2d-1}h at 0 may be isolated even if the zero of hh at 0 is not isolated. Let h(x,y)=y4+(yx2)2x6y6h(x,y)=y^{4}+(y-x^{2})^{2}-x^{6}-y^{6}. Then T5h=y4+(yx2)2T_{5}h=y^{4}+(y-x^{2})^{2} has an isolated zero at 0. However, the zero of hh at 0 is not isolated. In a neighbourhood of zero there are two analytic solutions of h(x,y)=0h(x,y)=0 with initial series terms given by

y1(x)\displaystyle y_{1}(x) =\displaystyle= x2x3+x522x6+25x78+\displaystyle x^{2}-x^{3}+\frac{x^{5}}{2}-2x^{6}+\frac{25x^{7}}{8}+\cdots
y2(x)\displaystyle y_{2}(x) =\displaystyle= x2+x3x522x625x78+\displaystyle x^{2}+x^{3}-\frac{x^{5}}{2}-2x^{6}-\frac{25x^{7}}{8}+\cdots
Remark 12.

In some cases it is possible to detect that the zero of hh at 0 is not isolated and terminate the algorithm. For instance if hmh_{m} is the lowest degree nonzero form of the Taylor series of hh and hm(a)>0h_{m}(a)>0 and hm(b)<0h_{m}(b)<0 for some a,bna,b\in\mathbb{R}^{n}, then h(ta)>0h(ta)>0 and h(tb)<0h(tb)<0 for t(0,ϵ)t\in(0,\epsilon) with some ϵ>0\epsilon>0, and hence the zero of hh at 0 is not isolated.

The number of limit computations in step (2)(2) can be reduced by using fast negative criteria to decide that the zero of T2d1h(u)T_{2d-1}h(u) at 0 is not isolated.

3. Example

Let us compute the lower limit and the upper limit of g(x,y,z)h(x,y,z)\frac{g(x,y,z)}{h(x,y,z)} at 0, where

g\displaystyle g =\displaystyle= exp(sin(x2+y4+z6))1\displaystyle\exp(\sin(x^{2}+y^{4}+z^{6}))-1
h\displaystyle h =\displaystyle= cos(x)sin(y2)z41\displaystyle\sqrt{\cos(x)-\sin(y^{2})-z^{4}}-1

For d=2d=2 in step (2)(2) we have T2d1h=x22y24T_{2d-1}h=\frac{-x^{2}-2y^{2}}{4}. Since T2d1h(0,0,z)=0T_{2d-1}h(0,0,z)=0, the limit

lim(x,y,z)0x4+y4+z4T2d1h\lim_{(x,y,z)\rightarrow 0}\frac{x^{4}+y^{4}+z^{4}}{T_{2d-1}h}

does not exist, and so in step (3)(3) we set d=3d=3 and go back to step (2)(2). Now

T2d1h=x412x2y224x212y448y248z496T_{2d-1}h=\frac{-x^{4}-12x^{2}y^{2}-24x^{2}-12y^{4}-48y^{2}-48z^{4}}{96}

and

lim(x,y,z)0x6+y6+z6T2d1h=0\lim_{(x,y,z)\rightarrow 0}\frac{x^{6}+y^{6}+z^{6}}{T_{2d-1}h}=0

hence we move on to step (4)(4). We have T2d1g=x4+2x2+2y42T_{2d-1}g=\frac{x^{4}+2x^{2}+2y^{4}}{2} and the returned value is

lim inf(x,y,z)0g(x,y,z)h(x,y,z)=lim inf(x,y,z)0T2d1g(x,y,z)T2d1h(x,y,z)=4\liminf_{(x,y,z)\rightarrow 0}\frac{g(x,y,z)}{h(x,y,z)}=\liminf_{(x,y,z)\rightarrow 0}\frac{T_{2d-1}g(x,y,z)}{T_{2d-1}h(x,y,z)}=-4

To find the upper limit we just need to compute the upper limit in step (4)(4)

lim sup(x,y,z)0g(x,y,z)h(x,y,z)=lim sup(x,y,z)0T2d1g(x,y,z)T2d1h(x,y,z)=0\limsup_{(x,y,z)\rightarrow 0}\frac{g(x,y,z)}{h(x,y,z)}=\limsup_{(x,y,z)\rightarrow 0}\frac{T_{2d-1}g(x,y,z)}{T_{2d-1}h(x,y,z)}=0

To compute limits of rational functions Algorithm 7 can use any of the algorithms described in [7]. We used the implementation of these algorithms in Mathematica. In this example methods based on topological properties performed better. Algorithm 15 (TLIM) took 7777 seconds when using Algorithm 14 (ZCQ2) and 323323 seconds when using Algorithm 13 (ZCQ1). Methods based on optimization were not able to complete the computation in 1212 hours. The most time-consuming part of the computation is the limit in step (2)(2) with d=3d=3.

References

  • [1] P. Alvandi, M. Kazemi, and M. Moreno Maza. Computing limits of real multivariate rational functions. In Proceedings of the International Symposium on Symbolic and Algebraic Computation, ISSAC 2016, pages 39–46. ACM, 2016.
  • [2] C. Cadavid, S. Molina, and J. D. Velez. Limits of quotients of bivariate real analytic functions. J. Symbolic Comp., 50:197–207, 2013.
  • [3] D. Gruntz. On computing limits in a symbolic manipulation system. PhD thesis, ETH, 1996.
  • [4] K. Kurdyka and S. Spodzieja. Separation of real algebraic sets and the łojasiewicz exponent. Proceedings of the AMS, 142(9):3089–3102, 2014.
  • [5] S. Łojasiewicz. Ensembles semi-analytiques. I.H.E.S., 1964.
  • [6] B. Salvy and J. Shackell. Symbolic asymptotics: Multiseries of inverse functions. J. Symb. Comput., 27:543–563, 1999.
  • [7] A. Strzeboński. Comparison of cad-based methods for computation of rational function limits. In Proceedings of the International Symposium on Symbolic and Algebraic Computation, ISSAC 2018, pages 375–382. ACM, 2018.
  • [8] J. D. Velez, J. P. Hernandez, and C. A. Cadavid. Limits of quotients of real polynomial functions of three variables, 2015. arXiv 1505.04121.
  • [9] S. J. Xiao and G. X. Zeng. Determination of the limits for multivariate rational functions. Science China Mathematics, 57(2):397–416, 2014.
  • [10] S. J. Xiao, X. N. Zeng, and G. X. Zeng. Real valuations and the limits of multivariate rational functions. Journal of Algebra and Its Applications, 14(5):1550–1567, 2015.