DiscreteMaxLimit

DiscreteMaxLimit[f,k]

gives the max limit kf(k) of the sequence f as k tends to over the integers.

DiscreteMaxLimit[f,{k1,,kn}]

gives the nested max limit f(k1,,kn) over the integers.

DiscreteMaxLimit[f,{k1,,kn}{,,}]

gives the multivariate max limit f(k1,,kn) over the integers.

Details and Options

  • DiscreteMaxLimit is also known as limit superior, supremum limit, limsup, upper limit and outer limit.
  • DiscreteMaxLimit computes the smallest upper bound for the limit and is always defined for real-valued sequences. It is often used to give conditions of convergence and other asymptotic properties that do not rely on an actual limit to exist.
  • DiscreteMaxLimit[f,k] can be entered as f. A template can be entered as dMlim, and moves the cursor from the underscript to the body.
  • DiscreteMaxLimit[f,{k1,,kn}{,,}] can be entered as f.
  • The possible limit points are ±.
  • The max limit is defined as a limit of the max envelope sequence max[ω]:
  • DiscreteMaxLimit[f,k]DiscreteLimit[max[ω],ω]
    DiscreteMaxLimit[f,{k1,,kn}{,,}]DiscreteLimit[max[ω],ω]
  • DiscreteMaxLimit[f[k],k-] is equivalent to DiscreteMaxLimit[f[-l],l] etc.
  • The definition uses the max envelope max[ω]MaxValue[{f[k],kωk},k] for univariate f[k] and max[ω]MaxValue[{f[k1,,kn],k1ωknωki},{k1,,kn}] for multivariate f[k1,,kn]. The sequence max[ω] is monotone decreasing as ω, so it always has a limit, which may be ±.
  • The illustration shows max[k] and max[Min[k1,k2]] in blue.
  • DiscreteMaxLimit returns unevaluated when the max limit cannot be found.
  • The following options can be given:
  • Assumptions$Assumptionsassumptions on parameters
    GenerateConditionsAutomaticwhether to generate conditions on parameters
    MethodAutomaticmethod to use
    PerformanceGoal"Quality"aspects of performance to optimize
  • Possible settings for GenerateConditions include:
  • Automaticnon-generic conditions only
    Trueall conditions
    Falseno conditions
    Nonereturn unevaluated if conditions are needed
  • Possible settings for PerformanceGoal include $PerformanceGoal, "Quality" and "Speed". With the "Quality" setting, DiscreteMaxLimit typically solves more problems or produces simpler results, but it potentially uses more time and memory.

Examples

open allclose all

Basic Examples  (4)

Max limit of a sequence:

Max limit of a product:

Use dMlim to enter the template and to move from the underscript to the body:

TraditionalForm typesetting:

Scope  (21)

Basic Uses  (4)

Compute the max limit of a sequence when n approaches Infinity:

Compute the max limit of a sequence when n approaches -Infinity:

Compute a nested max limit for a multivariate sequence:

Compute the max limit of a list of sequences:

Elementary Sequences  (6)

Find the max limit of a rational-exponential sequence:

Convergent geometric sequence:

Oscillating geometric sequence:

Divergent oscillating geometric sequence:

Exponential sequence:

Power sequence:

Trigonometric sequences:

Inverse trigonometric sequence:

Logarithmic sequence:

Periodic Sequences  (3)

Limits of periodic sequences:

Eventually periodic sequence:

Densely aperiodic sequences:

Piecewise Sequences  (2)

Piecewise sequence with a finite max limit:

Piecewise sequence with an infinite max limit:

Piecewise sequence with periodic conditions:

Special Function Sequences  (2)

Compute the limit of a sequence involving Fibonacci:

Sequence involving FactorialPower:

Number Theoretic Sequences  (2)

Limits involving LCM and GCD:

Sequence involving Prime:

Multivariate Sequences  (2)

Compute a nested max limit:

Plot the sequence and its limit:

Multivariate max limits:

Options  (6)

Assumptions  (1)

Specify assumptions on a parameter:

Different assumptions can produce different results:

GenerateConditions  (3)

Return a result without stating conditions:

This result is only valid if x>1:

Return unevaluated if the results depend on the value of parameters:

By default, conditions are generated that return a unique result:

By default, conditions are not generated if only special values invalidate the result:

With GenerateConditions->True, even these non-generic conditions are reported:

Method  (1)

Compute the max limit of a periodic sequence using the default method:

Obtain the same answer using the method for periodic sequences:

The limit of the sequence is undefined, since it oscillates between 0 and 1:

PerformanceGoal  (1)

DiscreteMaxLimit computes limits involving sequences of arbitrarily large periods:

Use PerformanceGoal to avoid potentially expensive computations in such cases:

The Method option overrides PerformanceGoal:

Applications  (7)

Basic Applications  (2)

Compute the asymptotic supremum of a sequence:

Plot the sequence and the asymptotic supremum:

Verify that the following sequence does not have a limit:

Show that DiscreteMaxLimit and DiscreteMinLimit are not equal:

Confirm that the limit does not exist by using DiscreteLimit:

Series Convergence  (4)

Show that the infinite series whose general term is defined here is convergent, by using the ratio test:

Plot the partial sums of the series:

Compute the ratio of the adjacent terms using DiscreteRatio:

The sequence of ratios does not converge:

However, the ratio test can still be used because the upper limit of the ratios is less than 1:

Confirm that the series converges using SumConvergence:

Evaluate the infinite series:

Show that the infinite series whose general term is defined here is convergent, by using the root test:

Plot the partial sums of the series:

Compute the n^(th) root of the general term:

The limit of the sequence of roots does not exist:

However, the root test still indicates convergence because the max limit is less than 1:

Confirm that the series converges using SumConvergence:

Evaluate the infinite series:

Consider the sequence :

The inverse radius of the associated power series is given by:

This means the radius of convergence is infinite and converges for all z in TemplateBox[{}, Complexes], in particular to :

Compute the Taylor series at zero and its radius of convergence for the following function:

The ^(th) Taylor coefficient is :

Formally, the Taylor series does sum to the original function:

The radius of convergence of the Taylor series is given by:

This means the Taylor series will converge for values of within of the origin. For example, at :

At values of further away, the sum will not converge; for example, at :

At the points , the terms of the Taylor series alternate between and :

Hence the partial sums go between and :

Visualize and the partial sums of its Taylor series on the interval ; in the interior of the interval, convergence is rapid, but the Taylor polynomials always go to either or at the endpoints:

Computational Complexity  (1)

An algorithm runtime function is said to be "big-o of ", written , if _(n->_(TemplateBox[{}, Integers])infty) (f(n))/(g(n))<infty:

Similarly, is said to be "big-theta of ", written if _(n->_(TemplateBox[{}, Integers])infty) (f(n))/(g(n))<infty and _(n->_(TemplateBox[{}, Integers])infty)(f(n))/(g(n))>0:

The statement is always true:

If and , then :

It is possible for two functions to share neither relationship:

Hence, defines a reflexive partial order on the space of algorithm runtimes similar to :

If and , then , which implies that is an equivalence relation:

Properties & Relations  (11)

A real-valued sequence always has a (possibly infinite) max limit:

The corresponding limit may not exist:

If and have finite max limits, then TemplateBox[{{(, {f, +, g}, )}, x, a}, DiscreteMaxLimit]<=TemplateBox[{f, x, a}, DiscreteMaxLimit]+TemplateBox[{g, x, a}, DiscreteMaxLimit]:

In this case, there is strict inequality:

Positive multiplicative constants can be moved outside a limit:

For a real-valued sequence, if DiscreteLimit exists, DiscreteMaxLimit has the same value:

If has a finite limit, then TemplateBox[{{(, {f, +, g}, )}, x, a}, DiscreteMaxLimit]=TemplateBox[{f, x, a}, DiscreteMaxLimit]+TemplateBox[{g, x, a}, DiscreteMaxLimit]:

DiscreteMaxLimit is always greater than or equal to DiscreteMinLimit:

If DiscreteMaxLimit equals DiscreteMinLimit, the limit exists and equals their common value:

If the max limit is , then the min limit and thus the limit are also :

DiscreteMaxLimit can be computed as -DiscreteMinLimit[-f,]:

If , then TemplateBox[{{g, (, n, )}, x, a}, MaxLimit2Arg]<=TemplateBox[{{f, (, n, )}, x, a}, MinLimit2Arg]<=TemplateBox[{{f,  , {(, n, )}}, x, a}, MaxLimit2Arg]:

If the two max limits are equalas in this examplethen has a limit:

This is a generalization of the "squeezing" or "sandwich" theorem:

MaxLimit is always greater than or equal to DiscreteMaxLimit:

Possible Issues  (1)

DiscreteMaxLimit is only defined for real-valued sequences:

Neat Examples  (1)

Visualize a set of sequence max limits:

Introduced in 2017
 (11.2)