Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Polynomial Solutions of Recurrence Relations O. Shkaravska M. van Eekelen A. Tamalet Digital Security, ICIS Radboud Universiteit Nijmegen Tallinn, 9 June 2009 Sponsored by the Netherlands Organisation for Scientific Research (NWO), project Amortized Heap Space Usage Analysis (AHA), grantnr. 612.063.511. Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Outline Motivation: recurrences in program analysis and math. 1 Our Contribution: multi-step quadratic recurrences for 2 1-variable polynomials Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Size/Resource Recurrences tails : L n ( α ) → L f ( n ) ( α ) tails l = match l with Nil ⇒ Nil Cons(hd, tl) ⇒ l ++ tails(tl) ⊢ f ( 0 ) = 0 n ≥ 1 ⊢ f ( n ) = n + f ( n − 1 ) Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Linear Recurrences for 1-variable Functions ⊢ f ( 0 ) = 0 n ≥ 1 ⊢ f ( n ) = n + f ( n − 1 ) Homogenisation by symbolic differentiation: f ′ ( n ) := f ( n ) − f ( n − 1 ) , f ′ ( n ) = 1 + f ′ ( n − 1 ) , f ′ ( 1 ) = 1 − 0 = 1 f ′′ ( n ) := f ′ ( n ) − f ′ ( n − 1 ) f ′′ ( n ) = f ′′ ( n − 1 ) , f ′′ ( 2 ) = f ′ ( 2 ) − f ′ ( 1 ) = 1, f ′′ ( n ) = 1 f ′′′ ( n ) = 0. If the solution is a polynomial, then the degree is 2: f ( n ) = an 2 + bn + c ⇒ c = 0 , a = b = 1 f ( 0 ) = 0 , f ( 1 ) = 1 , f ( 2 ) = 3 = 2 Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Non-linear recurrences: math. challenge No general theory, as for linear recurrences. We consider polynomial solutions for such recurrences. = 4 n 2 p ( n 1 , 0 ) 1 = 4 n 2 p ( 0 , n 2 ) 2 = ( p ( n 1 − 1 , n 2 ) + n 1 − ( p ( n 1 , n 2 − 1 ) + n 2 )) 2 p ( n 1 , n 2 ) + 17 n 1 n 2 We want to know such D , that either degree ( p ) := z ≤ D or D is not a polynomial at all. If such D is known then we can use MUC or, as above (better!), fit a polynomial by solving SLE and check then if it suits the recurrence. In the example we take D = 2 and obtain p ( n 1 , n 2 ) = 4 n 2 1 + 4 n 2 2 + 9 n 1 n 2 Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Multi-step Quadratic Recurrence t -step Quadratic Recurrence α 11 p 2 ( n − r 1 )+ p ( n ) = α 12 p ( n − r 1 ) p ( n − r 2 ) + α 22 p 2 ( n − r 2 )+ α 13 p ( n − r 1 ) p ( n − r 3 ) + α 33 p 2 ( n − r 3 )+ . . . + α t − 1 , t p ( n − r t − 1 ) p ( n − r t ) + α tt p 2 ( n − r t )+ � � L p ( n − r 1 ) , . . . , p ( n − r t ) Our Aim Find D such that deg ( p ) ≤ D Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Technicalities: gather coefficients at n t in the r.h.s. = a z n z + . . . + a 1 n + a 0 p ( n ) = a z ( n − r ) z + . . . + a 1 ( n − r ) + a 0 p ( n − r ) 0 ≤ i , j ≤ z a i a j ( n − r k ) i ( n − r l ) j = � p ( n − r k ) p ( n − r l ) = � � p ( n ) 1 ≤ k ≤ l ≤ t α kl 0 ≤ i , j ≤ z a i a j n i + j + K i , j , − 1 n i + j − 1 + . . . + K i , j , − ( i + j ) ( K i , j , − 0 ) k , l k , l k , l where K i , j , − 0 = 1 k , l . . . K i , j , − m i C m − γ = � m ( − r k ) γ ( − r l ) m − γ γ = 0 C γ k , l j Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Cancellation equations for multi-step recurrence The coefficient t Cancellation at n t 2 z > z ⇒ a z a z Σ 1 ≤ k ≤ l ≤ t K z , z , − 0 2 z v 0 = α kl k , l v 0 = 0 a z a z Σ 1 ≤ k ≤ l ≤ t K z , z , − 1 v 1 = α kl + k , l 2 z − 1 > z ⇒ a z − 1 a z Σ 1 ≤ k ≤ l ≤ t K z − 1 , z , − 0 2 z − 1 α kl + k , l v 1 = 0 a z a z − 1 Σ 1 ≤ k ≤ l ≤ t K z , z − 1 , − 0 α kl k , l . . . v m = � 2 z − m > z ⇒ i , j 0 ≤ i + j ≤ m 2 z − m a z − i a z − j Σ 1 ≤ k ≤ l ≤ t K z − i , z − j , − ( m − ( i + j )) v m = 0 α kl k , l Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Cancellation conditions form a homogeneous linear system w.r.t α kl A homogeneous linear system: A ¯ x = 0 Folklore: if the amount of equations is equal to the amount x = ¯ of variables then the only solution is zero: ¯ 0, x = ¯ in fact: if rank ( A ) = “the amount of variables”, then ¯ 0. We note: the first m + 1 cancellation conditions form a homogeneous system w.r.t. α kl : v 0 = 0, v 1 = 0, ... v m ; z > m implies 2 z − m > z then all the m + 1 cancellation conditions must hold simultaneously, i.e. they form this system of m + 1 equations; our coefficients α kl form exactly its solution; Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Cancellation conditions form a homogeneous linear system w.r.t α kl We note (continue): Let z > # { α kl } − 1 (“ the amount of coefficients ” α kl - 1). Then we have a homogeneous system where the amount of equations, # { α kl } is equal to the amount of variables. Folklore: “it implies” that the system has only zero solution, i.e. all the coefficients α kl are zero and the recurrence is linear. The real problem: we have to show that the RANK of the matrix of the system v m = 0, where 0 ≤ m ≤ # { α kl } − 1, is equal to # { α kl } ; It is difficult: its determinant after m ≥ 4 is really weird, with the unknown coefficients a i (at the moment I do not know if you can get rid of them). Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Cancellation conditions form a homogeneous linear system w.r.t α kl What we do know: for 1 ≤ m ≤ 3 the coefficients for m are expressible via the coefficients for m − 1, using this, we show that for m ≤ 3 the unknown coefficients a i may be omitted, the determinant for the two-step recurrence over p ( n − r 1 ) and p ( n − r 2 ) with m = 2 is non-zero, that is the homogeneous system over α 11 , α 12 , α 22 has a solution and it is zero, i.e. the recurrence is linear. Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Cancellation conditions form a homogeneous linear system w.r.t α kl Theorem 1 If a quadratic two-step recurrence has a polynomial solution then its degree z ≤ 2 If z > 2 then 2 z − 2 > z and the cancellation conditions for m = 0 , 1 , 2 must hold. Moreover, the determinant of the matrix of the corresponding linear system is non-zero. Therefore, all the coefficients α 11 , α 12 , α 22 are zero and the recurrence is linear. Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Idea: coefficients at n 2 z − m are polynomials on z # { α kl } ≥ 4: reduce to a system with simpler determinants. We want to obtain the presentation v m ( z ) = A mm z m + . . . + A m 0 = 0, from which follows: either A mm � = 0 ⇒ z ≤ | A 0 m | A mm or A mm = 0 ⇒ we have a simpler equation instead of v m = 0 Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials Computing A mi for v ( z ) = A mm z m + . . . + A m 0 Lemma 1 The coefficient at the highest degree of z in v m ( z ) is A mm = ( − r k − r l ) m a z a z m ! Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Motivation: recurrences in program analysis and math. Our Contribution: multi-step quadratic recurrences for 1-variable polynomials To our aim: find D , such that z ≤ D Theorem 1 z < #( α kl ) or z ≤ | A d 0 0 | | A d 0 d 0 | , where d 0 = min 1 ≤ d ≤ #( α kl ) { A dd � = 0 } . Suppose that z ≥ #( α kl ) . Then all v m = 0, where 0 ≤ m ≤ #( α kl ) , hold. Suppose that d with the property A dd � = 0 does not exist, that is for all 1 ≤ m ≤ #( α kl ) we have A mm = 0. Shkaravska, van Eekelen, Tamalet Polynomial Solutions
Recommend
More recommend