<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Elementary_recursive_function</id>
	<title>Elementary recursive function - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Elementary_recursive_function"/>
	<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Elementary_recursive_function&amp;action=history"/>
	<updated>2026-10-26T01:18:54Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Elementary_recursive_function&amp;diff=5141987&amp;oldid=prev</id>
		<title>imported&gt;Marc Schroeder: /* Superposition bases for elementary functions */</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Elementary_recursive_function&amp;diff=5141987&amp;oldid=prev"/>
		<updated>2025-12-06T16:46:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Superposition bases for elementary functions&lt;/span&gt;&lt;/p&gt;
&lt;a href=&quot;http://debianws.lexgopc.com/wiki143/index.php?title=Elementary_recursive_function&amp;amp;diff=5141987&amp;amp;oldid=398152&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>imported&gt;Marc Schroeder</name></author>
	</entry>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Elementary_recursive_function&amp;diff=398152&amp;oldid=prev</id>
		<title>imported&gt;EmilJ: link prominently to the, now dismbiguated, language class</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Elementary_recursive_function&amp;diff=398152&amp;oldid=prev"/>
		<updated>2024-11-06T08:05:39Z</updated>

		<summary type="html">&lt;p&gt;link prominently to the, now dismbiguated, language class&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{About| |other meanings|Elementary function}}&lt;br /&gt;
In [[recursion theory]], an &amp;#039;&amp;#039;&amp;#039;elementary recursive function&amp;#039;&amp;#039;&amp;#039;, also called an &amp;#039;&amp;#039;&amp;#039;elementary function&amp;#039;&amp;#039;&amp;#039;, or a &amp;#039;&amp;#039;&amp;#039;Kalmár elementary function&amp;#039;&amp;#039;&amp;#039;, is a restricted form of a [[primitive recursive function]], allowing bounded applications of [[exponentiation]] (for example, &amp;lt;math&amp;gt;O(2^{2^n})&amp;lt;/math&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
The name was coined by [[László Kalmár]], in the context of [[Computable function|recursive functions]] and [[Undecidable problem|undecidability]]; most elementary recursive functions are far from elementary. Not all primitive recursive problems are elementary; for example, [[tetration]] is not elementary. The corresponding class of [[decision problem]]s is denoted [[ELEMENTARY|&amp;lt;math&amp;gt;\mathsf{ELEMENTARY}&amp;lt;/math&amp;gt;]].&lt;br /&gt;
&lt;br /&gt;
==Definition==&lt;br /&gt;
&lt;br /&gt;
The definitions of elementary recursive functions are the same as for [[primitive recursive function]]s, except that primitive recursion is replaced by bounded summation and bounded product. All functions work over the [[natural number]]s. The basic functions, all of them elementary recursive, are:&lt;br /&gt;
&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Zero function&amp;#039;&amp;#039;&amp;#039;.  Returns zero: &amp;#039;&amp;#039;f&amp;#039;&amp;#039;(x) = 0.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Successor function&amp;#039;&amp;#039;&amp;#039;: &amp;#039;&amp;#039;f&amp;#039;&amp;#039;(&amp;#039;&amp;#039;x&amp;#039;&amp;#039;) = &amp;#039;&amp;#039;x&amp;#039;&amp;#039; + 1. Often this is denoted by &amp;#039;&amp;#039;S&amp;#039;&amp;#039;, as in &amp;#039;&amp;#039;S&amp;#039;&amp;#039;(&amp;#039;&amp;#039;x&amp;#039;&amp;#039;). Via repeated application of a successor function, one can achieve addition.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Projection functions&amp;#039;&amp;#039;&amp;#039;: these are used for ignoring arguments. For example, &amp;#039;&amp;#039;f&amp;#039;&amp;#039;(&amp;#039;&amp;#039;a&amp;#039;&amp;#039;, &amp;#039;&amp;#039;b&amp;#039;&amp;#039;) = &amp;#039;&amp;#039;a&amp;#039;&amp;#039; is a projection function.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Subtraction function&amp;#039;&amp;#039;&amp;#039;: &amp;#039;&amp;#039;f&amp;#039;&amp;#039;(&amp;#039;&amp;#039;x&amp;#039;&amp;#039;, &amp;#039;&amp;#039;y&amp;#039;&amp;#039;) = &amp;#039;&amp;#039;x&amp;#039;&amp;#039; − &amp;#039;&amp;#039;y&amp;#039;&amp;#039; if &amp;#039;&amp;#039;y&amp;#039;&amp;#039; &amp;lt; &amp;#039;&amp;#039;x&amp;#039;&amp;#039;, or 0 if &amp;#039;&amp;#039;y&amp;#039;&amp;#039; ≥ &amp;#039;&amp;#039;x&amp;#039;&amp;#039;. This function is used to define conditionals and iteration.&lt;br /&gt;
&lt;br /&gt;
From these basic functions, we can build other elementary recursive functions.&lt;br /&gt;
&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Composition&amp;#039;&amp;#039;&amp;#039;: applying values from some elementary recursive function as an argument to another elementary recursive function. In &amp;#039;&amp;#039;f&amp;#039;&amp;#039;(&amp;#039;&amp;#039;x&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, ..., &amp;#039;&amp;#039;x&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;) = &amp;#039;&amp;#039;h&amp;#039;&amp;#039;(&amp;#039;&amp;#039;g&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;(&amp;#039;&amp;#039;x&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, ..., &amp;#039;&amp;#039;x&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;), ..., &amp;#039;&amp;#039;g&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;m&amp;lt;/sub&amp;gt;(&amp;#039;&amp;#039;x&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;, ..., &amp;#039;&amp;#039;x&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;n&amp;lt;/sub&amp;gt;)) is elementary recursive if &amp;#039;&amp;#039;h&amp;#039;&amp;#039; is elementary recursive and each &amp;#039;&amp;#039;g&amp;#039;&amp;#039;&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; is elementary recursive.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Bounded summation&amp;#039;&amp;#039;&amp;#039;: &amp;lt;math&amp;gt;f(m, x_1, \ldots, x_n) = \sum\limits_{i=0}^mg(i, x_1, \ldots, x_n)&amp;lt;/math&amp;gt; is elementary recursive if &amp;#039;&amp;#039;g&amp;#039;&amp;#039; is elementary recursive.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Bounded product&amp;#039;&amp;#039;&amp;#039;: &amp;lt;math&amp;gt;f(m, x_1, \ldots, x_n) = \prod\limits_{i=0}^mg(i, x_1, \ldots, x_n)&amp;lt;/math&amp;gt; is elementary recursive if &amp;#039;&amp;#039;g&amp;#039;&amp;#039; is elementary recursive.&lt;br /&gt;
&lt;br /&gt;
== Basis for ELEMENTARY ==&lt;br /&gt;
&lt;br /&gt;
The class of elementary functions coincides with the closure with respect to composition of the projections and one of the following function sets: &amp;lt;math&amp;gt;\{ n+1, n \,\stackrel{.}{-}\, m, \lfloor n/m \rfloor, n^m \}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\{ n+m, n \,\stackrel{.}{-}\, m, \lfloor n/m\rfloor, 2^n \}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\{ n+m, n^2, n \,\bmod\, m, 2^n \}&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;n \, \stackrel{.}{-} \, m = \max\{n-m, 0\}&amp;lt;/math&amp;gt; is the subtraction function defined above.&amp;lt;ref&amp;gt;{{cite journal | last1 = Mazzanti | first1 = S | year = 2002 | title = Plain Bases for Classes of Primitive Recursive Functions | journal = Mathematical Logic Quarterly | volume = 48 | pages = 93–104 | doi=10.1002/1521-3870(200201)48:1&amp;lt;93::aid-malq93&amp;gt;3.0.co;2-8}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;S. S. Marchenkov, &amp;quot;Superpositions of elementary arithmetic functions&amp;quot;, &amp;#039;&amp;#039;Journal of Applied and Industrial Mathematics&amp;#039;&amp;#039;, September 2007, Volume 1, Issue 3, pp 351-360, {{doi|10.1134/S1990478907030106}}.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lower elementary recursive functions ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Lower elementary recursive&amp;#039;&amp;#039; functions follow the definitions as above, except that bounded product is disallowed. That is, a lower elementary recursive function must be a zero, successor, or projection function, a composition of other lower elementary recursive functions, or the bounded sum of another lower elementary recursive function.&lt;br /&gt;
&lt;br /&gt;
Lower elementary recursive functions are also known as Skolem elementary functions.&amp;lt;ref&amp;gt;[[Thoralf Skolem|Th. Skolem]], &amp;quot;Proof of some theorems on recursively enumerable sets&amp;quot;, &amp;#039;&amp;#039;[[Notre Dame Journal of Formal Logic]]&amp;#039;&amp;#039;, 1962, Volume 3, Number 2, pp 65-74, {{doi|10.1305/ndjfl/1093957149}}.&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;volkov_skolem&amp;quot;&amp;gt;S. A. Volkov, &amp;quot;On the class of Skolem elementary functions&amp;quot;, &amp;#039;&amp;#039;Journal of Applied and Industrial Mathematics&amp;#039;&amp;#039;, 2010, Volume 4, Issue 4, pp 588-599, {{doi|10.1134/S1990478910040149}}.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Whereas elementary recursive functions have potentially more than exponential growth, the lower elementary recursive functions have polynomial growth.&lt;br /&gt;
&lt;br /&gt;
The class of lower elementary functions has a description in terms of composition of simple functions analogous to that we have for elementary functions.&amp;lt;ref name=&amp;quot;volkov_skolem&amp;quot; /&amp;gt;&amp;lt;ref&amp;gt;{{cite arXiv |last=Volkov |first=Sergey | year= 2016 |eprint=1611.04843 |title=Finite Bases with Respect to the Superposition in Classes of Elementary Recursive Functions [dissertation] |class=cs.CC }}&amp;lt;/ref&amp;gt; Namely, a polynomial-bounded function is lower elementary if and only if it can be expressed using a composition of the following functions: projections, &amp;lt;math&amp;gt;n+1&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;nm&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;n \,\stackrel{.}{-}\, m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;n\wedge m&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\lfloor n/m \rfloor&amp;lt;/math&amp;gt;, one exponential function (&amp;lt;math&amp;gt;2^n&amp;lt;/math&amp;gt; or &amp;lt;math&amp;gt;n^m&amp;lt;/math&amp;gt;) with the following restriction on the structure of formulas: the formula can have no more than two floors with respect to an exponent (for example, &amp;lt;math&amp;gt;xy(z+1)&amp;lt;/math&amp;gt; has 1 floor, &amp;lt;math&amp;gt;(x+y)^{yz+x}+z^{x+1}&amp;lt;/math&amp;gt; has 2 floors, &amp;lt;math&amp;gt;2^{2^x}&amp;lt;/math&amp;gt; has 3 floors). Here &amp;lt;math&amp;gt;n\wedge m&amp;lt;/math&amp;gt; is a bitwise AND of {{mvar|n}} and {{mvar|m}}.&lt;br /&gt;
&lt;br /&gt;
== Descriptive characterization ==&lt;br /&gt;
&lt;br /&gt;
In [[descriptive complexity]], ELEMENTARY is equal to the class [[HO (complexity)|HO]] of [[language (computer science)|language]]s that can be described by a formula of [[higher-order logic]].&amp;lt;ref&amp;gt;{{Citation | author = Lauri Hella and José María Turull-Torres | title =Computing queries with higher-order logics | journal = [[Theoretical Computer Science (journal)|Theoretical Computer Science]] | volume = 355 | issue = 2 | year = 2006 | pages = 197–214   | issn =0304-3975 | doi=10.1016/j.tcs.2006.01.009| doi-access = free }}&amp;lt;/ref&amp;gt;  This means that every language in the ELEMENTARY complexity class corresponds to as a higher-order formula that is true for, and only for, the elements on the language.  More precisely, &amp;lt;math&amp;gt;\mathsf{NTIME}\left(2^{2^{\cdots{2^{O(n)}}}}\right) = \exists{}\mathsf{HO}^i&amp;lt;/math&amp;gt;, where ⋯ indicates a tower of {{mvar|i}} exponentiations and &amp;lt;math&amp;gt;\exists{}\mathsf{HO}^i&amp;lt;/math&amp;gt; is the class of queries that begin with existential quantifiers of {{mvar|i}}th order and then a formula of {{math|(&amp;#039;&amp;#039;i&amp;#039;&amp;#039;&amp;amp;nbsp;−&amp;amp;nbsp;1)}}th order.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[Elementary function arithmetic]]&lt;br /&gt;
* [[Primitive recursive function]]&lt;br /&gt;
* [[Grzegorczyk hierarchy]]&lt;br /&gt;
* [[EXPTIME]]&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
{{reflist}}&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
* Rose, H.E., &amp;#039;&amp;#039;Subrecursion: Functions and hierarchies&amp;#039;&amp;#039;, [[Oxford University Press]], 1984. {{ISBN|0-19-853189-3}}&lt;br /&gt;
&lt;br /&gt;
{{ComplexityClasses}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Complexity classes]]&lt;br /&gt;
[[Category:Computability theory]]&lt;/div&gt;</summary>
		<author><name>imported&gt;EmilJ</name></author>
	</entry>
</feed>