Behaviour of Algorithms at Time at Infinity

In summary, the conversation revolves around the concept of studying the behavior of algorithms at infinity. While this question may not make sense, it is possible to ask similar questions that do make sense. The main issue is that algorithms are iterative and cannot reach an infinite ordinal through iteration alone. Two potential approaches to studying behavior at infinity are using a write-only output tape on a Turing machine or using the notion of transfinite induction. The conversation also discusses the behavior of two programs at infinity, with one potentially stopping and the other going into an infinite loop. However, it is argued that neither program can truly be said to stop at infinity.
  • #1
Dragonfall
1,030
4
Where might I learn more about the behaviour of algorithms given an infinite amount of time, if such a question makes sense?
 
Mathematics news on Phys.org
  • #2
no such a question doesn't make sense.
However if you wanted to see what your up against take a look at courses(outlines) for Computability or Complexity Theory or THeory of Computation.

What you'd probably be interested in may be Dynamical Systems Theory and whether it can be applied to Algorithms. Basically can you discover patterns in algorithms like periodicity.
 
  • #3
I should clarify -- as stated the question doesn't make sense. But it is possible to ask other similar questions that do make sense.

The problem is that algorithms are iterative things, and you can't reach an infinite ordinal through iteration alone.

So, if you want to talk about behavior at infinity (as opposed to asymptotic behavior), you will have to devise some sort of limit.


The first alternative that springs to my mind is a Turing machine (an "idealized computer") equipped with a write-only output tape. While you generally can't ask about the behavior of the machine itself after infinitely many steps, you can ask about the contents of the output tape.


A second thing that springs to mind is the notion of transfinite induction, although it's not really an algorithm. (though it is the appropriate generalization in certain contexts)



Did you have any particular application in mind? I suspect it's better to use some approach other than trying to study an algorithm's behavior "at infinity", and maybe we can suggest something if we know what you're trying to do.
 
Last edited:
  • #4
I thought about the 'behaviour' of the following programs 'at infinity', and I thought they must be different. I'll just write as if 'at infinity' is defined:

1. Any simple loop (while(1) blah)
2. Print the natural numbers in succession until all natural numbers have been exhaulsted.

Seems to me the first one will not stop at infinity and the second one will.
 
  • #5
Oh man i just burned my throat with grapefruit. And its making me cough badly

Anyways Dragonfall: how will the second one stop at "infinity"
Computer memory is finite though the set N is infinite. Actually there would be two ways to do this. One will stop(finite) and the other will not stop(infinite)

The first is to create a Natural Class with N bits to store the number.
Once the maximum number has been reached the computer will stop. Clearly that number isn't infinite.

The second method is to just use the succession operator (or simply +1)repeatedly and this will go into an infinite loop because there are no checks for overflow.
 
  • #6
Dragonfall said:
I thought about the 'behaviour' of the following programs 'at infinity', and I thought they must be different. I'll just write as if 'at infinity' is defined:

1. Any simple loop (while(1) blah)
2. Print the natural numbers in succession until all natural numbers have been exhaulsted.

Seems to me the first one will not stop at infinity and the second one will.
Well, one thing you can say about those two is that in the first one, the program's state repeats, and in the second one the program's state does not ever repeat. As far as "stopping at infinity" goes, I think what probably captures your intent is that in the second one it is possible to put the configurations of the program in 1-1 correspondence with the integers--"exhausting" them--and in the first one it is not.
 
Last edited:
  • #7
Suppose you have infinite memory, then the second one will stop since it has printed all integers in sucession, and has printed an infinity of them -- 'exhaust' them, so to speak.

This is a thought experiment, there's no point to actually doing this on a computer with 'finite memory'.
 
Last edited:
  • #8
even if you have infinite memory what is your condition to terminate? You cannot just say for(0...infinity) since in most computer programs infinity is actually a finite number. If you have infinite memory then you can write a program that will never terminate based on either a N class or the succ() operator
 
  • #9
But it won't actually stop. It does exhaust all the integers, but it never actually reaches "infinity." I don't think there's any way to get closer to saying that it stops.

You could try saying, run both programs so that the iteration number is greater than any integer. Then there is no possible state that the second one can be in, since any such state would lead to its printing an integer it must have already printed. But the first one could plausibly be in one of the few states it has available to it, since nothing about those states says much of anything about the number of iterations, so maybe it could still be "running" after an infinite amount of time. However, this argument is flawed because the contradiction also holds for the first one; despite the configurations repeating, you can still assign numbers to them in their order of appearance, creating a sequence of configurations. And if you have run the program for a number of times greater than any integer, it can't be anywhere in that sequence. So it's a meaningless supposition.
 

What is the behaviour of algorithms at time at infinity?

The behaviour of algorithms at time at infinity refers to the performance of an algorithm as the input size approaches infinity. This can be analyzed by looking at the time complexity and space complexity of the algorithm.

Why is it important to consider the behaviour of algorithms at time at infinity?

Understanding the behaviour of algorithms at time at infinity allows us to predict and analyze the efficiency and scalability of an algorithm. This can help in making decisions about which algorithm to use for a particular problem and in optimizing the performance of existing algorithms.

What are the different types of behaviour that algorithms can exhibit at time at infinity?

Algorithms can exhibit three types of behaviour at time at infinity: constant, logarithmic, and exponential. Constant behaviour means that the time and space complexity remains the same regardless of the input size. Logarithmic behaviour means that the time and space complexity increases at a slower rate than the input size. Exponential behaviour means that the time and space complexity increases at a faster rate than the input size.

How can we determine the behaviour of an algorithm at time at infinity?

The behaviour of an algorithm at time at infinity can be determined by analyzing its time and space complexity. This can be done by looking at the number of operations or steps the algorithm takes as the input size increases. The Big O notation is commonly used to represent the time and space complexity of an algorithm.

Can an algorithm have different behaviours at different points in time at infinity?

Yes, an algorithm can have different behaviours at different points in time at infinity. This is because the behaviour of an algorithm can change depending on the input size. For example, an algorithm may have a logarithmic behaviour for small input sizes, but as the input size increases, it may exhibit exponential behaviour.

Similar threads

  • General Math
Replies
31
Views
1K
Replies
7
Views
538
Replies
1
Views
764
Replies
16
Views
1K
  • General Math
Replies
9
Views
1K
  • Set Theory, Logic, Probability, Statistics
Replies
3
Views
1K
  • General Math
Replies
2
Views
820
  • General Math
Replies
15
Views
1K
Replies
4
Views
2K
  • Other Physics Topics
Replies
13
Views
3K
Back
Top