Question about solving recurrences/difference equations

  • Thread starter Thread starter homomorphism
  • Start date Start date
Click For Summary
SUMMARY

The discussion focuses on solving recurrences, specifically the recurrence relation T(n) = 2T(n/2) + n, using symbolic methods rather than the Master Theorem or recursion trees. Participants explore converting this into difference equation form, suggesting T[i+1] = kT[i] + n, where k is a constant derived from the recurrence. The correct transformation involves letting n = 2^k, leading to T(2^k) = 2T(2^{k-1}) + 2^k. The final solution to this recurrence is confirmed as T(n) = n log₂ n, with references to using WolframAlpha for verification.

PREREQUISITES
  • Understanding of recurrence relations in algorithm analysis
  • Familiarity with difference equations
  • Knowledge of the Master Theorem for solving recurrences
  • Basic concepts of z-transforms and Fourier transforms
NEXT STEPS
  • Research the application of z-transforms in solving difference equations
  • Learn about the Master Theorem and its limitations in recurrence solving
  • Explore WolframAlpha's methods for solving recurrences and difference equations
  • Study symbolic differentiation techniques applicable to algorithm analysis
USEFUL FOR

Students and professionals in computer science, particularly those focusing on algorithm analysis, recurrence relations, and mathematical methods for solving equations.

homomorphism
Messages
19
Reaction score
0
i want to know if there's any standard symbolic method of solving recurrences often found in the analysis of algorithms. many of these recurrences are readily solved by the master theorem. let's say we don't want to use that (for whatever reason) and we don't want to draw recursion trees.

let's take for example:
T(n) = 2T(n/2) + n

how exactly would we put this in difference equation form? something like T[i+1] = kT + n? k is some constant (basically some function on the 2) after we do that it is straightforward (i think) to use some symbolic differentiation and then solve the recurrence. We should be getting nlogn (log base 2) as the solution to this recurrence. but i don't think I'm writing down the actual difference equation correctly.
 
Physics news on Phys.org
Let n=2i

T(n) = 2T(n/2) + n will gives T(2i) = 2T(i) + 2i.

How am I going to expressed this as T[i+1] = kT + n ? :confused:
 
For T(n) = 2T(n/2) + n you can set n=2^k
Then you have T(2^k) = 2T(2^{k-1}) + 2^k. I don't know if that helps.
 
Wow that's good idea Edgardo. So what do we do next to solve T(n) = 2T(n/2) + n ?

May be we need to use z-transform or Fourier transform directly.
 
homomorphism said:
i want to know if there's any standard symbolic method of solving recurrences often found in the analysis of algorithms. many of these recurrences are readily solved by the master theorem. let's say we don't want to use that (for whatever reason) and we don't want to draw recursion trees.

let's take for example:
T(n) = 2T(n/2) + n

how exactly would we put this in difference equation form? something like T[i+1] = kT + n? k is some constant (basically some function on the 2) after we do that it is straightforward (i think) to use some symbolic differentiation and then solve the recurrence. We should be getting nlogn (log base 2) as the solution to this recurrence. but i don't think I'm writing down the actual difference equation correctly.


Let n=2m.
T(n) = 2T(n/2) + n will gives T(2m) = 2T(m) + 2n.

I have just come to know about WolframAlpha at Sticky: WolframAlpha guide on electrical engineering forum.
Solving the http://www09.wolframalpha.com/input/?i=f(2*m)=2*f(m)+2*m,+f(1)=1", and simplify (assuming T(1)=1 )

T(2n) = 2nlog2n + 4n.

What method does the WolframAlpha engine used to get the answer?
 
Last edited by a moderator:

Similar threads

  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 2 ·
Replies
2
Views
1K
  • · Replies 22 ·
Replies
22
Views
5K
  • · Replies 18 ·
Replies
18
Views
3K
  • · Replies 7 ·
Replies
7
Views
3K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 0 ·
Replies
0
Views
3K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K