negligible function

{{For|a similar term|negligible set}}

In mathematics, a negligible function is a function \mu:\mathbb{N}\to\mathbb{R} such that for every positive integer c there exists an integer Nc such that for all x > Nc,

:|\mu(x)|<\frac{1}{x^c}.

Equivalently, we may also use the following definition.

A function \mu:\mathbb{N}\to\mathbb{R} is negligible, if for every positive polynomial poly(·) there exists an integer Npoly > 0 such that for all x > Npoly

: |\mu(x)|<\frac 1 {\operatorname{poly}(x)}.

History

The concept of negligibility can find its trace back to sound models of analysis. Though the concepts of "continuity" and "infinitesimal" became important in mathematics during Newton and Leibniz's time (1680s), they were not well-defined until the late 1810s. The first reasonably rigorous definition of continuity in mathematical analysis was due to Bernard Bolzano, who wrote in 1817 the modern definition of continuity. Later Cauchy, Weierstrass and Heine also defined as follows (with all numbers in the real number domain \mathbb{R}):

:(Continuous function) A function f:\mathbb{R}{\rightarrow}\mathbb{R} is continuous at x=x_0 if for every \varepsilon>0, there exists a positive number \delta>0 such that |x-x_0|<\delta implies |f(x)-f(x_0)|<\varepsilon.

This classic definition of continuity can be transformed into the

definition of negligibility in a few steps by changing parameters used in the definition. First, in the case x_0=\infty with f(x_0)=0, we must define the concept of "infinitesimal function":

:(Infinitesimal) A continuous function \mu:\mathbb{R}\to\mathbb{R} is infinitesimal (as x goes to infinity) if for every \varepsilon>0 there exists N_\varepsilon such that for all x>N_\varepsilon

::|\mu(x)|<\varepsilon\,.{{Citation needed|date=August 2007}}

Next, we replace \varepsilon>0 by the functions 1/x^c where c>0 or by 1/\operatorname{poly}(x) where \operatorname{poly}(x) is a positive polynomial. This leads to the definitions of negligible functions given at the top of this article. Since the constants \varepsilon>0 can be expressed as 1/\operatorname{poly}(x) with a constant polynomial, this shows that infinitesimal functions are a superset of negligible functions.

Use in cryptography

In complexity-based modern cryptography, a security scheme is

provably secure if the probability of security failure (e.g.,

inverting a one-way function, distinguishing cryptographically strong pseudorandom bits from truly random bits) is negligible in terms of the input x = cryptographic key length n. Hence comes the definition at the top of the page because key length n must be a natural number.

Nevertheless, the general notion of negligibility doesn't require that the input parameter x is the key length n. Indeed, x can be any predetermined system metric and corresponding mathematical analysis would illustrate some hidden analytical behaviors of the system.

The reciprocal-of-polynomial formulation is used for the same reason that computational boundedness is defined as polynomial running time: it has mathematical closure properties that make it tractable in the asymptotic setting (see #Closure properties). For example, if an attack succeeds in violating a security condition only with negligible probability, and the attack is repeated a polynomial number of times, the success probability of the overall attack still remains negligible.

In practice one might want to have more concrete functions bounding the adversary's success probability and to choose the security parameter large enough that this probability is smaller than some threshold, say 2−128.

Closure properties

One of the reasons that negligible functions are used in foundations of complexity-theoretic cryptography is that they obey closure properties.{{Cite book|title=Introduction to modern cryptography|last=Katz|first=Johnathan|others=Lindell, Yehuda|date = 6 November 2014|isbn=9781466570269|edition= Second|location=Boca Raton|oclc=893721520}} Specifically,

  1. If f,g:\mathbb{N}\to\mathbb{R} are negligible, then the function x\mapsto f(x)+g(x) is negligible.
  2. If f:\mathbb{N}\to\mathbb{R} is negligible and p is any real polynomial, then the function x\mapsto p(x)\cdot f(x) is negligible.

Conversely, if f:\mathbb{N}\to\mathbb{R} is not negligible, then neither is x\mapsto f(x)/p(x) for any real polynomial p.

Examples

{{Expand section|date=March 2018}}

  • n \mapsto a^{-n} is negligible for any a \geq 2:
  • Step: This is an exponential decay function where a is a constant greater than or equal to 2. As n \to \infty, a^{-n} \to 0 very quickly, making it negligible.
  • f(n) = 3^{-\sqrt{n}} is negligible:
  • Step: This function has exponential decay with a base of 3, but the exponent grows slower than n (only at \sqrt{n}). As n \to \infty, 3^{-\sqrt{n}} \to 0, so it’s still negligible but decays slower than 3^{-n}.
  • f(n) = n^{-\log n} is negligible:
  • Step: In this case, n^{-\log n} represents a polynomial decay, with the exponent growing negatively due to \log n. Since the decay rate increases with n, the function goes to 0 faster than polynomial functions like n^{-k} for any constant k, making it negligible.
  • f(n) = (\log n)^{-\log n} is negligible:
  • Step: This function decays as the logarithm of n raised to a negative exponent -\log n, which leads to a fast approach to 0 as n \to \infty. The decay here is faster than inverse logarithmic or polynomial rates, making it negligible.
  • f(n) = 2^{-c \log n} is not negligible, for positive c:
  • Step: We can rewrite this as f(n) = n^{-c}, which is a polynomial decay rather than an exponential one. Since c is positive, f(n) \to 0 as n \to \infty, but it doesn’t decay as quickly as true exponential functions with respect to n, making it non-negligible.

Assume n > 0, we take the limit as n \to \infty:

Negligible:

  • f(n) = \frac{1}{x^{n/2}}:
  • Step: This function decays exponentially with base x raised to the power of -\frac{n}{2}. As n \to \infty, x^{-\frac{n}{2}} \to 0 quickly, making it negligible.
  • f(n) = \frac{1}{x^{\log{(n^k)}}} for k \geq 1:
  • Step: We can simplify x^{-\log(n^k)} as n^{-k \log x}, which decays faster than any polynomial. As n \to \infty, the function approaches zero and is considered negligible for any k \geq 1 and x > 1.
  • f(n) = \frac{1}{x^{(\log n)^k}} for k \geq 1:
  • Step: The decay is determined by the base x raised to the power of -(\log n)^k. Since (\log n)^k grows with n, this function approaches zero faster than polynomial decay, making it negligible.=
  • f(n) = \frac{1}{x^{\sqrt{n}}}:
  • Step: Here, f(n) decays exponentially with a base of x raised to -\sqrt{n}. As n \to \infty, f(n) \to 0 quickly, so it’s considered negligible.

Non-negligible:

  • f(n) = \frac{1}{n^{1/n}}:
  • Step: Since n^{1/n} \to 1 as n \to \infty, this function decays very slowly, failing to approach zero quickly enough to be considered negligible.
  • f(n) = \frac{1}{x^{n(\log n)}}:
  • Step: With an exponential base and exponent n(\log n), this function would approach zero very rapidly, suggesting negligibility.

See also

References

{{Reflist}}

  • {{cite book | last = Goldreich | first = Oded | date = 2001 | title = Foundations of Cryptography: Volume 1, Basic Tools | publisher = Cambridge University Press | isbn = 0-521-79172-3 | url = http://www.wisdom.weizmann.ac.il/~oded/frag.html }}
  • {{cite book | first = Michael | last = Sipser | authorlink = Michael Sipser | date = 1997 | title = Introduction to the Theory of Computation | publisher = PWS Publishing | isbn = 0-534-94728-X | chapter = Section 10.6.3: One-way functions | pages = [https://archive.org/details/introductiontoth00sips/page/374 374–376] | chapter-url-access = registration | chapter-url = https://archive.org/details/introductiontoth00sips/page/374 }}
  • {{cite book| first = Christos | last = Papadimitriou | authorlink = Christos Papadimitriou | date = 1993 | title = Computational Complexity | url = https://archive.org/details/computationalcom00papa | url-access = limited | publisher = Addison Wesley | edition = 1st | isbn = 0-201-53082-1 | chapter = Section 12.1: One-way functions | pages = [https://archive.org/details/computationalcom00papa/page/n287 279]–298 }}
  • {{cite book | first = Jean François | last = Colombeau | authorlink = Jean François Colombeau | date = 1984 | title = New Generalized Functions and Multiplication of Distributions | publisher = Mathematics Studies 84, North Holland | isbn = 0-444-86830-5}}
  • {{cite journal | first = Mihir | last = Bellare | date = 1997 | citeseerx = 10.1.1.43.7900 | title = A Note on Negligible Functions | journal = Journal of Cryptology | volume = 15 | page = 2002 | publisher = Dept. of Computer Science & Engineering University of California at San Diego }}

Category:Mathematical analysis

Category:Types of functions