<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://complexityzoo.net/index.php?action=history&amp;feed=atom&amp;title=Complexity_Zoo_Glossary</id>
	<title>Complexity Zoo Glossary - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://complexityzoo.net/index.php?action=history&amp;feed=atom&amp;title=Complexity_Zoo_Glossary"/>
	<link rel="alternate" type="text/html" href="https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;action=history"/>
	<updated>2026-05-12T16:43:38Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.0</generator>
	<entry>
		<id>https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=7666&amp;oldid=prev</id>
		<title>Mormegil: /* P */ +id linked from Complexity Garden#tautology</title>
		<link rel="alternate" type="text/html" href="https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=7666&amp;oldid=prev"/>
		<updated>2024-12-18T18:39:55Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;P: &lt;/span&gt; +id linked from &lt;a href=&quot;/Complexity_Garden#tautology&quot; title=&quot;Complexity Garden&quot;&gt;Complexity Garden#tautology&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:39, 18 December 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l101&quot; &gt;Line 101:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 101:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; problem : A function from inputs to outputs, which we want an algorithm to compute.  A crossword puzzle is not a problem; it's an &amp;lt;i&amp;gt;instance&amp;lt;/i&amp;gt;.  The set of &amp;lt;i&amp;gt;all&amp;lt;/i&amp;gt; crossword puzzles is a problem. ''See also:'' [[#decision-problem|decision problem]], [[#language|language]].&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; problem : A function from inputs to outputs, which we want an algorithm to compute.  A crossword puzzle is not a problem; it's an &amp;lt;i&amp;gt;instance&amp;lt;/i&amp;gt;.  The set of &amp;lt;i&amp;gt;all&amp;lt;/i&amp;gt; crossword puzzles is a problem. ''See also:'' [[#decision-problem|decision problem]], [[#language|language]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; promise problem : A problem for which the input is guaranteed to have a certain property.  I.e. if an input doesn't have that property, then we don't care what the algorithm does when given that input.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; promise problem : A problem for which the input is guaranteed to have a certain property.  I.e. if an input doesn't have that property, then we don't care what the algorithm does when given that input.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; p-optimal or p-speedup : (aka polynomially optimal or polynomial speedup) A Turing machine &amp;lt;math&amp;gt;M&amp;lt;/math&amp;gt; accepting a language &amp;lt;math&amp;gt;L&amp;lt;/math&amp;gt; is polynomially optimal if for any other &amp;lt;math&amp;gt;M'&amp;lt;/math&amp;gt; accepting &amp;lt;math&amp;gt;L&amp;lt;/math&amp;gt;, there exists a polynomial &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; such that for all inputs &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;: &amp;lt;math&amp;gt;\mathrm{time}_M(x)\leq p(|x|,\mathrm{time}_{M'}(x))&amp;lt;/math&amp;gt;. A language with no p-optimal &amp;lt;math&amp;gt;M&amp;lt;/math&amp;gt; is said to have p-speedup. p-optimal was defined by Krajicek and Pudlak [[zooref#kp89|[KP89]]]; see also Messner [[zooref#mes99|[Mes99]]].&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; p-optimal or &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;span id=&amp;quot;pspeedup&amp;quot;&amp;gt;&lt;/ins&gt;p-speedup&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/span&amp;gt; &lt;/ins&gt;: (aka polynomially optimal or polynomial speedup) A Turing machine &amp;lt;math&amp;gt;M&amp;lt;/math&amp;gt; accepting a language &amp;lt;math&amp;gt;L&amp;lt;/math&amp;gt; is polynomially optimal if for any other &amp;lt;math&amp;gt;M'&amp;lt;/math&amp;gt; accepting &amp;lt;math&amp;gt;L&amp;lt;/math&amp;gt;, there exists a polynomial &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; such that for all inputs &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;: &amp;lt;math&amp;gt;\mathrm{time}_M(x)\leq p(|x|,\mathrm{time}_{M'}(x))&amp;lt;/math&amp;gt;. A language with no p-optimal &amp;lt;math&amp;gt;M&amp;lt;/math&amp;gt; is said to have p-speedup. p-optimal was defined by Krajicek and Pudlak [[zooref#kp89|[KP89]]]; see also Messner [[zooref#mes99|[Mes99]]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; P-uniform or P-nonuniform : A family of Boolean circuits is P-uniform if a Turing machine given input string &amp;lt;math&amp;gt;1^n&amp;lt;/math&amp;gt; (1 repeated n times) can output the member of the family with &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; inputs in time polynomial in n. A ''problem'' is P-nonuniform if no family of minimal Boolean circuits for the problem is P-uniform.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; P-uniform or P-nonuniform : A family of Boolean circuits is P-uniform if a Turing machine given input string &amp;lt;math&amp;gt;1^n&amp;lt;/math&amp;gt; (1 repeated n times) can output the member of the family with &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; inputs in time polynomial in n. A ''problem'' is P-nonuniform if no family of minimal Boolean circuits for the problem is P-uniform.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Mormegil</name></author>
	</entry>
	<entry>
		<id>https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=6745&amp;oldid=prev</id>
		<title>Quackack: /* O */</title>
		<link rel="alternate" type="text/html" href="https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=6745&amp;oldid=prev"/>
		<updated>2021-12-18T04:21:54Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;O&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 04:21, 18 December 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l85&quot; &gt;Line 85:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 85:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== O =====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== O =====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; o (&amp;quot;little-oh&amp;quot;) : For a function &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; to be &amp;lt;math&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;o&lt;/del&gt;(g(n))&amp;lt;/math&amp;gt; means that &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; is &amp;lt;math&amp;gt;O(&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;g&lt;/del&gt;(n&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;)&lt;/del&gt;)&amp;lt;/math&amp;gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;and is not &lt;/del&gt;&amp;lt;math&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;\Omega&lt;/del&gt;(g(n))&amp;lt;/math&amp;gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;(i.e. &lt;/del&gt;&amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;grows more slowly &lt;/del&gt;than &amp;lt;math&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;g&lt;/del&gt;(n)&amp;lt;/math&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;)&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; o (&amp;quot;little-oh&amp;quot;) : For a function &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; to be &amp;lt;math&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;O&lt;/ins&gt;(g(n))&amp;lt;/math&amp;gt; means that &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;for &amp;lt;strong&amp;gt;all&amp;lt;/strong&amp;gt; positive constants &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, &lt;/ins&gt;&amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; is &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;less than &amp;lt;math&amp;gt;kg(n)&lt;/ins&gt;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;/&lt;/ins&gt;math&amp;gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;for all sufficiently large &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;O &lt;/del&gt;(&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;quot;big-oh&amp;quot;&lt;/del&gt;) : For a function &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; to be &amp;lt;math&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;O&lt;/del&gt;(g(n))&amp;lt;/math&amp;gt; means that for &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;some nonnegative constant &lt;/del&gt;&amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; is &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;less &lt;/del&gt;than &amp;lt;math&amp;gt;kg(n)&amp;lt;/math&amp;gt; for all sufficiently large &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;; &lt;/ins&gt;O (&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;quot;big-oh&amp;quot;) : For a function &amp;lt;math&amp;gt;f&lt;/ins&gt;(n)&amp;lt;/math&amp;gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;to be &lt;/ins&gt;&amp;lt;math&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;O&lt;/ins&gt;(g(n))&amp;lt;/math&amp;gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;means that for &amp;lt;strong&amp;gt;some&amp;lt;/strong&amp;gt; nonnegative constant &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, &lt;/ins&gt;&amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;is less &lt;/ins&gt;than &amp;lt;math&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;kg&lt;/ins&gt;(n)&amp;lt;/math&amp;gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;for all sufficiently large &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; &amp;amp;Omega; (Omega) : For a function &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; to be &amp;lt;math&amp;gt;\Omega(g(n))&amp;lt;/math&amp;gt; means that for some nonnegative constant &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; is greater than &amp;lt;math&amp;gt;kg(n)&amp;lt;/math&amp;gt; for all sufficiently large &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;amp;omega; &lt;/ins&gt;(&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;little omega&lt;/ins&gt;) : For a function &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; to be &amp;lt;math&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;\Omega&lt;/ins&gt;(g(n))&amp;lt;/math&amp;gt; means that for &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;strong&amp;gt;all&amp;lt;/strong&amp;gt; positive constants &lt;/ins&gt;&amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; is &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;greater &lt;/ins&gt;than &amp;lt;math&amp;gt;kg(n)&amp;lt;/math&amp;gt; for all sufficiently large &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; &amp;amp;Omega; (Omega) : For a function &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; to be &amp;lt;math&amp;gt;\Omega(g(n))&amp;lt;/math&amp;gt; means that for &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;strong&amp;gt;&lt;/ins&gt;some&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/strong&amp;gt; &lt;/ins&gt;nonnegative constant &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; is greater than &amp;lt;math&amp;gt;kg(n)&amp;lt;/math&amp;gt; for all sufficiently large &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; oracle : Also called &amp;quot;black box.&amp;quot;  An imaginary device that solves some computational problem immediately.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; oracle : Also called &amp;quot;black box.&amp;quot;  An imaginary device that solves some computational problem immediately.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: ''Note:'' An oracle is specified by the answers it gives to every possible question you could ask it.  So in some contexts, 'oracle' is more or less synonymous with 'input'—but usually an input so long that the algorithm can only examine a small fraction of it.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: ''Note:'' An oracle is specified by the answers it gives to every possible question you could ask it.  So in some contexts, 'oracle' is more or less synonymous with 'input'—but usually an input so long that the algorithm can only examine a small fraction of it.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Quackack</name></author>
	</entry>
	<entry>
		<id>https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=6676&amp;oldid=prev</id>
		<title>Jtrousdale: Removed empty &quot;X&quot; and &quot;Y&quot; headers consistent with other empty sections.</title>
		<link rel="alternate" type="text/html" href="https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=6676&amp;oldid=prev"/>
		<updated>2020-10-07T06:16:29Z</updated>

		<summary type="html">&lt;p&gt;Removed empty &amp;quot;X&amp;quot; and &amp;quot;Y&amp;quot; headers consistent with other empty sections.&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 06:16, 7 October 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l143&quot; &gt;Line 143:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 143:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; &amp;lt;span id=&amp;quot;word&amp;quot;&amp;gt;word&amp;lt;/span&amp;gt; : Given an [[#alphabet|alphabet]] &amp;lt;math&amp;gt;\Sigma&amp;lt;/math&amp;gt;, a word is a string &amp;lt;math&amp;gt;w \in \Sigma^*&amp;lt;/math&amp;gt;. That is, a string of characters drawn from &amp;lt;math&amp;gt;\Sigma&amp;lt;/math&amp;gt;. Using the alphabet &amp;lt;math&amp;gt;\Sigma = \{a, b, \dots, z\}&amp;lt;/math&amp;gt;, some valid words include &amp;lt;math&amp;gt;word&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;science&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;foobar&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;fotmewwi&amp;lt;/math&amp;gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; &amp;lt;span id=&amp;quot;word&amp;quot;&amp;gt;word&amp;lt;/span&amp;gt; : Given an [[#alphabet|alphabet]] &amp;lt;math&amp;gt;\Sigma&amp;lt;/math&amp;gt;, a word is a string &amp;lt;math&amp;gt;w \in \Sigma^*&amp;lt;/math&amp;gt;. That is, a string of characters drawn from &amp;lt;math&amp;gt;\Sigma&amp;lt;/math&amp;gt;. Using the alphabet &amp;lt;math&amp;gt;\Sigma = \{a, b, \dots, z\}&amp;lt;/math&amp;gt;, some valid words include &amp;lt;math&amp;gt;word&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;science&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;foobar&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;fotmewwi&amp;lt;/math&amp;gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;===== X =====&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;===== Y =====&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Z =====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Z =====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; &amp;lt;span id=&amp;quot;zeroone-law&amp;quot;&amp;gt;zero-one law&amp;lt;/span&amp;gt; : Any theorem which specifies that the probability of an event is either zero or one is known as a zero-one law.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; &amp;lt;span id=&amp;quot;zeroone-law&amp;quot;&amp;gt;zero-one law&amp;lt;/span&amp;gt; : Any theorem which specifies that the probability of an event is either zero or one is known as a zero-one law.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Computational Complexity]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Computational Complexity]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jtrousdale</name></author>
	</entry>
	<entry>
		<id>https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=6675&amp;oldid=prev</id>
		<title>Jtrousdale: Corrected conflation of &quot;M&quot; and &quot;N&quot; sections.</title>
		<link rel="alternate" type="text/html" href="https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=6675&amp;oldid=prev"/>
		<updated>2020-10-07T06:08:12Z</updated>

		<summary type="html">&lt;p&gt;Corrected conflation of &amp;quot;M&amp;quot; and &amp;quot;N&amp;quot; sections.&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 06:08, 7 October 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l78&quot; &gt;Line 78:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 78:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; monotone-nonmonotone gap : A Boolean function has a monotone-nonmonotone gap if it has nonmonotone Boolean circuits (using AND, OR, and NOT gates) that are smaller than any monotone Boolean circuits (without NOT gates) for it.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; monotone-nonmonotone gap : A Boolean function has a monotone-nonmonotone gap if it has nonmonotone Boolean circuits (using AND, OR, and NOT gates) that are smaller than any monotone Boolean circuits (without NOT gates) for it.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; Monte Carlo algorithm : A bounded-error randomized algorithm, i.e. one that returns the correct answer only with some specified probability.  The error probability can be either one-sided or two-sided.  (In physics and engineering, the term refers more broadly to any algorithm based on random sampling.)  The term was introduced by Metropolis and Ulam around 1945.  Contrast with Las Vegas.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; Monte Carlo algorithm : A bounded-error randomized algorithm, i.e. one that returns the correct answer only with some specified probability.  The error probability can be either one-sided or two-sided.  (In physics and engineering, the term refers more broadly to any algorithm based on random sampling.)  The term was introduced by Metropolis and Ulam around 1945.  Contrast with Las Vegas.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;===== N =====&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; nondeterministic machine : A hypothetical machine that, when faced with a choice, is able to make all possible choices at once - i.e. to branch off into different 'paths.'  In the end, the results from all the paths must be combined somehow into a single answer.  One can obtain dozens of different models of computation, depending on the exact way this is stipulated to happen.  For example, an {{zcls|n|np}} machine answers 'yes' if &amp;lt;i&amp;gt;any&amp;lt;/i&amp;gt; of its paths answer 'yes.'  By contrast, a {{zcls|p|pp}} machine answers 'yes' if the &amp;lt;i&amp;gt;majority&amp;lt;/i&amp;gt; of its paths answer 'yes.'&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; nondeterministic machine : A hypothetical machine that, when faced with a choice, is able to make all possible choices at once - i.e. to branch off into different 'paths.'  In the end, the results from all the paths must be combined somehow into a single answer.  One can obtain dozens of different models of computation, depending on the exact way this is stipulated to happen.  For example, an {{zcls|n|np}} machine answers 'yes' if &amp;lt;i&amp;gt;any&amp;lt;/i&amp;gt; of its paths answer 'yes.'  By contrast, a {{zcls|p|pp}} machine answers 'yes' if the &amp;lt;i&amp;gt;majority&amp;lt;/i&amp;gt; of its paths answer 'yes.'&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; non-negligible : A probability is non-negligible if it's greater than &amp;lt;math&amp;gt;1/p(n)&amp;lt;/math&amp;gt; for some polynomial &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; is the size of the input.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;; non-negligible : A probability is non-negligible if it's greater than &amp;lt;math&amp;gt;1/p(n)&amp;lt;/math&amp;gt; for some polynomial &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; is the size of the input.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jtrousdale</name></author>
	</entry>
	<entry>
		<id>https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=1197&amp;oldid=prev</id>
		<title>Argentpepper: replace adhoc formatting with built-in wikiformatting for definition lists</title>
		<link rel="alternate" type="text/html" href="https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=1197&amp;oldid=prev"/>
		<updated>2013-02-01T23:11:50Z</updated>

		<summary type="html">&lt;p&gt;replace adhoc formatting with built-in wikiformatting for definition lists&lt;/p&gt;
&lt;a href=&quot;https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;amp;diff=1197&amp;amp;oldid=222&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Argentpepper</name></author>
	</entry>
	<entry>
		<id>https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=222&amp;oldid=prev</id>
		<title>Admin at 09:23, 18 November 2012</title>
		<link rel="alternate" type="text/html" href="https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=222&amp;oldid=prev"/>
		<updated>2012-11-18T09:23:29Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:23, 18 November 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l31&quot; &gt;Line 31:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 31:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;certificate-complexity&amp;quot;&amp;gt;&amp;lt;b&amp;gt;certificate complexity:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Given a Boolean function &amp;lt;math&amp;gt;f:\{0,1\}^n\to\{0,1\}&amp;lt;/math&amp;gt;, the certificate complexity &amp;lt;math&amp;gt;C^X(f)&amp;lt;/math&amp;gt; of an input &amp;lt;math&amp;gt;X=x_1\dots x_n&amp;lt;/math&amp;gt; is the minimum size of a set &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; of variables such that &amp;lt;math&amp;gt;f(Y)=f(X)&amp;lt;/math&amp;gt; whenever &amp;lt;math&amp;gt;Y&amp;lt;/math&amp;gt; agrees with &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; on every variable in &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt;.  Then &amp;lt;math&amp;gt;C(f)&amp;lt;/math&amp;gt; is the maximum of &amp;lt;math&amp;gt;C^X(f)&amp;lt;/math&amp;gt; over all &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;.  See also [[#block-sensitivity|block sensitivity]].&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;certificate-complexity&amp;quot;&amp;gt;&amp;lt;b&amp;gt;certificate complexity:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Given a Boolean function &amp;lt;math&amp;gt;f:\{0,1\}^n\to\{0,1\}&amp;lt;/math&amp;gt;, the certificate complexity &amp;lt;math&amp;gt;C^X(f)&amp;lt;/math&amp;gt; of an input &amp;lt;math&amp;gt;X=x_1\dots x_n&amp;lt;/math&amp;gt; is the minimum size of a set &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; of variables such that &amp;lt;math&amp;gt;f(Y)=f(X)&amp;lt;/math&amp;gt; whenever &amp;lt;math&amp;gt;Y&amp;lt;/math&amp;gt; agrees with &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; on every variable in &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt;.  Then &amp;lt;math&amp;gt;C(f)&amp;lt;/math&amp;gt; is the maximum of &amp;lt;math&amp;gt;C^X(f)&amp;lt;/math&amp;gt; over all &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;.  See also [[#block-sensitivity|block sensitivity]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Image:Example-circuit.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;png&lt;/del&gt;|thumb|200px|right|Example of a Boolean [[#circuit|circuit]] of [[#depth|depth]] 4 that checks if two 2-bit strings are different.]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Image:Example-circuit.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;jpg&lt;/ins&gt;|thumb|200px|right|Example of a Boolean [[#circuit|circuit]] of [[#depth|depth]] 4 that checks if two 2-bit strings are different.]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;circuit&amp;quot;&amp;gt;&amp;lt;b&amp;gt;circuit:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; To engineers, a &amp;quot;circuit&amp;quot; is a closed loop.  But in theoretical computer science, a circuit never has loops: instead, it starts with an input, then applies a sequence of simple operations (or gates) to produce an output.  For example, an OR gate outputs 1 if either of its input bits are 1, and 0 otherwise.  The output of a gate can then be used as an input to other gates.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;circuit&amp;quot;&amp;gt;&amp;lt;b&amp;gt;circuit:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; To engineers, a &amp;quot;circuit&amp;quot; is a closed loop.  But in theoretical computer science, a circuit never has loops: instead, it starts with an input, then applies a sequence of simple operations (or gates) to produce an output.  For example, an OR gate outputs 1 if either of its input bits are 1, and 0 otherwise.  The output of a gate can then be used as an input to other gates.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=23&amp;oldid=prev</id>
		<title>Admin: 1 revision: Complexity zoo import.</title>
		<link rel="alternate" type="text/html" href="https://complexityzoo.net/index.php?title=Complexity_Zoo_Glossary&amp;diff=23&amp;oldid=prev"/>
		<updated>2012-11-18T03:10:24Z</updated>

		<summary type="html">&lt;p&gt;1 revision: Complexity zoo import.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
{{Simple-Alpha-Menu|{{CZ-Navbar}}&lt;br /&gt;
----&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;i&amp;gt;&amp;quot;Now you too can speak Theorese!&amp;quot;&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On this page I've collected terms that appear (or don't appear) throughout the Complexity Zoo, and that theoretical computer scientists tend to use without defining them, assuming everyone just knows what they mean.  The list is by no means comprehensive-- if you find something missing or in error, let someone know or jump in and help out!&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
===== A =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;adaptive:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Each question you ask (say to an oracle) can depend on the answers to the previous questions.  If A and B are complexity classes, then A&amp;lt;sup&amp;gt;B&amp;lt;/sup&amp;gt; is the class of languages decidable by an A machine that can make adaptive queries to a B oracle.&lt;br /&gt;
&lt;br /&gt;
{{Term|alphabet|Typically denoted &amp;lt;math&amp;gt;\Sigma&amp;lt;/math&amp;gt;, an alphabet is a finite set of characters. Common examples include &amp;lt;math&amp;gt;\{a, b, \dots, z\}&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\{0, 1\}&amp;lt;/math&amp;gt;.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;asymptotic:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Concerning the rate at which a function grows, ignoring constant factors.  For example, if an algorithm uses 3n+5 steps on inputs of size n, we say its running time is &amp;quot;asymptotically linear&amp;quot; - emphasizing that the linear dependence on n is what's important, not the 3 or the 5.&lt;br /&gt;
&lt;br /&gt;
===== B =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;block sensitivity&amp;quot;&amp;gt;&amp;lt;b&amp;gt;block sensitivity:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Given a Boolean function &amp;lt;math&amp;gt;f:\{0,1\}^n\to\{0,1\}&amp;lt;/math&amp;gt;, the block sensitivity &amp;lt;math&amp;gt;\mathrm{bs}^X(f)&amp;lt;/math&amp;gt; of an input &amp;lt;math&amp;gt;X=x_1\dots x_n&amp;lt;/math&amp;gt; is the maximum number of disjoint blocks &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; of variables such that &amp;lt;math&amp;gt;f(X)&amp;lt;/math&amp;gt; does not equal &amp;lt;math&amp;gt;f\left(X^{(B)}\right)&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;X^{(B)}&amp;lt;/math&amp;gt; denotes &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; with the variables in &amp;lt;math&amp;gt;B&amp;lt;/math&amp;gt; flipped.  Then &amp;lt;math&amp;gt;\mathrm{bs}(f)&amp;lt;/math&amp;gt; is the maximum of &amp;lt;math&amp;gt;\mathrm{bs}^X(f)&amp;lt;/math&amp;gt; over all &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;.  Defined by Nisan in 1991.  See also [[#sensitivity|sensitivity]], [[#certificate-complexity|certificate complexity]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Blum integer:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A product of two distinct primes, both of which are congruent to 3 mod 4.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Boolean formula:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A circuit in which each gate has fanout 1.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Boolean function:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Usually, a function &amp;lt;math&amp;gt;f:\{0,1\}^n\to\{0,1\}&amp;lt;/math&amp;gt;, that takes an &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;-bit string as input and produces a bit as output.&lt;br /&gt;
&lt;br /&gt;
===== C =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;certificate-complexity&amp;quot;&amp;gt;&amp;lt;b&amp;gt;certificate complexity:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Given a Boolean function &amp;lt;math&amp;gt;f:\{0,1\}^n\to\{0,1\}&amp;lt;/math&amp;gt;, the certificate complexity &amp;lt;math&amp;gt;C^X(f)&amp;lt;/math&amp;gt; of an input &amp;lt;math&amp;gt;X=x_1\dots x_n&amp;lt;/math&amp;gt; is the minimum size of a set &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; of variables such that &amp;lt;math&amp;gt;f(Y)=f(X)&amp;lt;/math&amp;gt; whenever &amp;lt;math&amp;gt;Y&amp;lt;/math&amp;gt; agrees with &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt; on every variable in &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt;.  Then &amp;lt;math&amp;gt;C(f)&amp;lt;/math&amp;gt; is the maximum of &amp;lt;math&amp;gt;C^X(f)&amp;lt;/math&amp;gt; over all &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;.  See also [[#block-sensitivity|block sensitivity]].&lt;br /&gt;
&lt;br /&gt;
[[Image:Example-circuit.png|thumb|200px|right|Example of a Boolean [[#circuit|circuit]] of [[#depth|depth]] 4 that checks if two 2-bit strings are different.]]&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;circuit&amp;quot;&amp;gt;&amp;lt;b&amp;gt;circuit:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; To engineers, a &amp;quot;circuit&amp;quot; is a closed loop.  But in theoretical computer science, a circuit never has loops: instead, it starts with an input, then applies a sequence of simple operations (or gates) to produce an output.  For example, an OR gate outputs 1 if either of its input bits are 1, and 0 otherwise.  The output of a gate can then be used as an input to other gates.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;closure:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; The closure of a set &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; under some operations, is the set of everything you can get by starting with &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt;, then repeatedly applying the operations.  For instance, the closure of the set &amp;lt;math&amp;gt;\{1\}&amp;lt;/math&amp;gt; under addition and subtraction is the set of integers.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;cnf&amp;quot;&amp;gt;&amp;lt;b&amp;gt;CNF:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Conjunctive Normal Form.  A special kind of Boolean formula, consisting of an AND of ORs of negated or non-negated literals.  For instance: &amp;lt;math&amp;gt;(a\vee\neg b)\wedge(b\vee\neg c\vee d)&amp;lt;/math&amp;gt;.  See also [[#dnf|DNF]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;collapse:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; An infinite sequence (hierarchy) of complexity classes &amp;lt;i&amp;gt;collapses&amp;lt;/i&amp;gt; if all but finitely many of them are actually equal to each other.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;complement:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; The complement of a language is the set of all instances not in the language.  The complement of a complexity class consists of the complement of each language in the class.  (Not the set of all languages not in the class!)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;complete:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A problem is complete for a complexity class if (1) it's in the class, and (2) everything in the class can be reduced to it (under some notion of reduction).  So, if you can solve the complete problems for some class, then you can solve every problem in the class.  The complete problems are the hardest.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;constructible:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Basically, a function &amp;lt;math&amp;gt;f&amp;lt;/math&amp;gt; is 'constructible' if it's nondecreasing, and if, given an input &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;f(\left\vert x\right\vert)&amp;lt;/math&amp;gt; can be computed in time linear in &amp;lt;math&amp;gt;\left\vert x\right\vert+f(\left\vert x\right\vert)&amp;lt;/math&amp;gt;.  Informally, constructible functions are those that are sufficiently well-behaved to appear as complexity bounds.  This is a technical notion that is almost never needed in practice.&lt;br /&gt;
&lt;br /&gt;
===== D =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;decision problem:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A problem for which the desired answer is a single bit (1 or 0, yes or no).  For simplicity, theorists often restrict themselves to talking about decision problems.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;decision tree:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A (typically) binary tree where each non-leaf vertex is labeled by a query, each edge is labeled by a possible answer to the query, and each leaf is labeled by an output (typically yes or no).  A decision tree represents a function in the obvious way.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;decision tree complexity:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Given a Boolean function &amp;lt;math&amp;gt;f:\{0,1\}^n\to\{0,1\}&amp;lt;/math&amp;gt;, the decision tree complexity &amp;lt;math&amp;gt;D(f)&amp;lt;/math&amp;gt; of &amp;lt;math&amp;gt;f&amp;lt;/math&amp;gt; is the minimum height of a decision tree representing &amp;lt;math&amp;gt;f&amp;lt;/math&amp;gt; (where height is the maximum length of a path from the root to a leaf).  Also called deterministic query complexity.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;depth:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; When referring to a circuit, the maximum number of gates along any path from an input to the output.  (Note that circuits never contain loops.)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;deterministic:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Not randomized.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;DNF:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Disjunctive Normal Form.  A Boolean formula consisting of an OR and ANDs of negated or non-negated literals.  For instance: &amp;lt;math&amp;gt;(a\wedge c)\vee(b\wedge\neg c)&amp;lt;/math&amp;gt;.  See also [[#cnf|CNF]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;downward-self-reducible&amp;quot;&amp;gt;&amp;lt;b&amp;gt;downward self-reducible:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A problem is downward self-reducible if an oracle for instances of size &amp;lt;math&amp;gt;n-1&amp;lt;/math&amp;gt; enables one to solve instances of size &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===== E =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;equivalence class:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A maximal set of objects that can all be transformed to each other by some type of transformation.&lt;br /&gt;
&lt;br /&gt;
===== F =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;family:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Usually an infinite sequence of objects, one for each input size n.  For example, a &amp;quot;family of circuits.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;fanin:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; The maximum number of input wires that any gate in a circuit can have.  A &amp;quot;bounded fanin&amp;quot; circuit is one in which each gate has a constant number of input wires (often assumed to be 2).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;fanout:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; The maximum number of output wires any gate in a circuit can have.  When talking about &amp;quot;circuits,&amp;quot; one usually assumes unbounded fanout unless specified otherwise.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;finite automaton:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; An extremely simple model of computation.  In the most basic form, a machine reads an input string once, from left to right.  At any step, the machine is in one of a finite number of states.  After it reads an input character (symbol), it transitions to a new state, determined by its current state as well as the character it just read.  The machine outputs 'yes' or 'no' based on its state when it reaches the end of the input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;FOCS:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; IEEE Symposium on Foundations of Computer Science (held every fall).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;function problem:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A problem where the desired output is not necessarily a single bit, but could belong to a set with more than 2 elements.  Contrast with decision problem.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;formula:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A circuit where each gate has fanout 1.&lt;br /&gt;
&lt;br /&gt;
===== G =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;gate:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A basic component used to build a circuit.  Usually performs some elementary logical operation: for example, an AND gate takes a collection of input bits, and outputs a '1' bit if all the input bits are '1', and a '0' bit otherwise.  See also fanin, fanout.&lt;br /&gt;
&lt;br /&gt;
===== H =====&lt;br /&gt;
{{Term|id=hamming-distance|Hamming distance|Given two bit strings &amp;lt;math&amp;gt;x,y\in\{0,1\}^n&amp;lt;/math&amp;gt; for some &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;, their Hamming distance &amp;lt;math&amp;gt;d(x,y)&amp;lt;/math&amp;gt; is the number of bits that are different between the two strings. This function satisfies the properties of a metric on the vectorspace &amp;lt;math&amp;gt;\{0,1\}^n&amp;lt;/math&amp;gt;, since it is non-negative, is symmetric, satisfies &amp;lt;math&amp;gt;d(x,x)=0&amp;lt;/math&amp;gt; and the satisfies the triangle inequality.&lt;br /&gt;
}}&lt;br /&gt;
{{Term|id=hamming-weight|Hamming weight|Given a bit string &amp;lt;math&amp;gt;x\in\{0,1\}^*&amp;lt;/math&amp;gt;, the Hamming weight of &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; is the number of non-zero bits. Equivalently, the Hamming weight of &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; is the Hamming distance &amp;lt;math&amp;gt;d(x,\mathbf{0})&amp;lt;/math&amp;gt; between &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; and a string of all zeros having the same length.&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;hard:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A problem is hard for a class if everything in the class can be reduced to it (under some notion of reduction).  If a problem is in a class &amp;lt;i&amp;gt;and&amp;lt;/i&amp;gt; hard for the class, then it's complete for the class.  Beware; hard and complete are not synonyms!&lt;br /&gt;
&lt;br /&gt;
===== I =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;instance:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A particular case of a problem.&lt;br /&gt;
&lt;br /&gt;
===== L =====&lt;br /&gt;
{{Term|language|Another term for [[#D|decision problem]] (but only a total decision problem, not a promise decision problem).  An instance is in a language, if and only if the answer to the decision problem is &amp;quot;yes.&amp;quot;&lt;br /&gt;
An alternate characterization of a language is as a set of [[#word|words]] over an alphabet &amp;lt;math&amp;gt;\Sigma&amp;lt;/math&amp;gt;: &amp;lt;math&amp;gt;L\subseteq \Sigma^*&amp;lt;/math&amp;gt;. This is equivalent since determining membership in &amp;lt;math&amp;gt;L&amp;lt;/math&amp;gt; is a decision problem called the characteristic function of &amp;lt;math&amp;gt;L&amp;lt;/math&amp;gt;. A simple example of a language is ODD, the set of all strings over &amp;lt;math&amp;gt;\{0,1\}&amp;lt;/math&amp;gt; which end in 1.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;lasvegas-algorithm&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Las Vegas algorithm:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A zero-error randomized algorithm, i.e. one that always returns the correct answer, but whose running time is a random variable.  The term was introduced by Babai in 1979.  Contrast [http://www.cheatcodesforsime3.com/ with] Monte Carlo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;low&amp;quot;&amp;gt;&amp;lt;b&amp;gt;low:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A complexity class C is low for D if D&amp;lt;sup&amp;gt;C&amp;lt;/sup&amp;gt; = D; that is, adding C as an oracle does not increase the power of D.  C is &amp;lt;i&amp;gt;self-low&amp;lt;/i&amp;gt; if C&amp;lt;sup&amp;gt;C&amp;lt;/sup&amp;gt; = C.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;lower bound&amp;quot;&amp;gt;&amp;lt;b&amp;gt;lower bound:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A result showing that a function grows &amp;lt;i&amp;gt;at least&amp;lt;/i&amp;gt; at a certain asymptotic rate.  Thus, a lower bound on the complexity of a problem implies that any algorithm for the problem requires &amp;lt;i&amp;gt;at least&amp;lt;/i&amp;gt; a certain amount of resources.  Lower bounds are much harder to come by than upper bounds.&lt;br /&gt;
&lt;br /&gt;
===== M =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;many-one reduction:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A reduction from problem A to problem B, in which an algorithm converts an instance of A into an instance of B having the same answer.  Also called a Karp reduction.  (Contrast with Turing reduction.)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;monotone:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A function is monotone (or monotonic) if, when one increases any of the inputs, the output never decreases (it can only increase or stay the same).  A Boolean circuit is monotone if it consists only of AND and OR gates, no NOT gates.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;gap&amp;quot;&amp;gt;&amp;lt;b&amp;gt;monotone-nonmonotone gap:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A Boolean function has a monotone-nonmonotone gap if it has nonmonotone Boolean circuits (using AND, OR, and NOT gates) that are smaller than any monotone Boolean circuits (without NOT gates) for it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Monte Carlo algorithm:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A bounded-error randomized algorithm, i.e. one that returns the correct answer only with some specified probability.  The error probability can be either one-sided or two-sided.  (In physics and engineering, the term refers more broadly to any algorithm based on random sampling.)  The term was introduced by Metropolis and Ulam around 1945.  Contrast with Las Vegas.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;nondeterministic machine:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A hypothetical machine that, when faced with a choice, is able to make all possible choices at once - i.e. to branch off into different 'paths.'  In the end, the results from all the paths must be combined somehow into a single answer.  One can obtain dozens of different models of computation, depending on the exact way this is stipulated to happen.  For example, an {{zcls|n|np}} machine answers 'yes' if &amp;lt;i&amp;gt;any&amp;lt;/i&amp;gt; of its paths answer 'yes.'  By contrast, a {{zcls|p|pp}} machine answers 'yes' if the &amp;lt;i&amp;gt;majority&amp;lt;/i&amp;gt; of its paths answer 'yes.'&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;non-negligible:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A probability is non-negligible if it's greater than &amp;lt;math&amp;gt;1/p(n)&amp;lt;/math&amp;gt; for some polynomial &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; is the size of the input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;nonuniform:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; This means that a different algorithm can be used for each input size.  Boolean circuits are a nonuniform model of computation -- one might have a circuit for input instances of size 51, that looks completely different from the circuit for instances of size 50.&lt;br /&gt;
&lt;br /&gt;
===== O =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;o (&amp;quot;little-oh&amp;quot;):&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; For a function &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; to be &amp;lt;math&amp;gt;o(g(n))&amp;lt;/math&amp;gt; means that &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; is &amp;lt;math&amp;gt;O(g(n))&amp;lt;/math&amp;gt; and is not &amp;lt;math&amp;gt;\Omega(g(n))&amp;lt;/math&amp;gt; (i.e. &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; grows more slowly than &amp;lt;math&amp;gt;g(n)&amp;lt;/math&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;O (&amp;quot;big-oh&amp;quot;):&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; For a function &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; to be &amp;lt;math&amp;gt;O(g(n))&amp;lt;/math&amp;gt; means that for some nonnegative constant &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; is less than &amp;lt;math&amp;gt;kg(n)&amp;lt;/math&amp;gt; for all sufficiently large &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;&amp;amp;Omega; (Omega):&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; For a function &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; to be &amp;lt;math&amp;gt;\Omega(g(n))&amp;lt;/math&amp;gt; means that for some nonnegative constant &amp;lt;math&amp;gt;k&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; is greater than &amp;lt;math&amp;gt;kg(n)&amp;lt;/math&amp;gt; for all sufficiently large &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;oracle&amp;quot;&amp;gt;&amp;lt;b&amp;gt;oracle:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Also called &amp;quot;black box.&amp;quot;  An imaginary device that solves some computational problem immediately.  &amp;lt;br&amp;gt;&amp;lt;i&amp;gt;Note:&amp;lt;/i&amp;gt; An oracle is specified by the answers it gives to every possible question you could ask it.  So in some contexts, 'oracle' is more or less synonymous with 'input' - but usually an input so long that the algorithm can only examine a small fraction of it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;ospeedup&amp;quot;&amp;gt;&amp;lt;b&amp;gt;O-optimal or O-speedup:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Informally, an O-optimal algorithm is one that is optimal in big-O notation. More formally, an algorithm A accepting a language L is O-optimal if for any other A' accepting L, there exists a constant &amp;lt;math&amp;gt;c&amp;lt;/math&amp;gt; such that for all inputs &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;: &amp;lt;math&amp;gt;time_A(x)\leq c(|x|+time_{M'}(x))&amp;lt;/math&amp;gt;. A language with no O-optimal A is said to have O-speedup. See [[Speedup]].&lt;br /&gt;
&lt;br /&gt;
===== P =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;path:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A single sequence of choices that could be made by a nondeterministic machine.&lt;br /&gt;
&lt;br /&gt;
{{Term|id=p-measure|''p''-measure|A game-theoretic reformulation of the classical Lebesgue measure, whose full definition is too long to fit here; please see the survey paper by Lutz, {{zcite|Lut93}}, wherein the term is formally defined. The measure is useful in proving [[#zeroone-law|zero-one laws]]. Also known as &amp;quot;Lutz's ''p''-measure.&amp;quot;}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;polylogarithmic:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;math&amp;gt;(\log(n))^c&amp;lt;/math&amp;gt;, where &amp;lt;math&amp;gt;c&amp;lt;/math&amp;gt; is a constant.  Also an adverb (&amp;quot;polylogarithmically&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;polynomial:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; To mathematicians, a polynomial in &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; is a sum of multiples of nonnegative integer powers of &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;: for example, &amp;lt;math&amp;gt;3n^2-8n+4&amp;lt;/math&amp;gt;.  To computer scientists, on the other hand, polynomial often means &amp;lt;i&amp;gt;upper-bounded&amp;lt;/i&amp;gt; by a polynomial: so &amp;lt;math&amp;gt;n+\log(n)&amp;lt;/math&amp;gt;, for example, is &amp;quot;polynomial.&amp;quot;  Also an adverb (&amp;quot;polynomially&amp;quot;).  A function that grows polynomially is considered to be 'reasonable,' unlike, say, one that grows exponentially.&lt;br /&gt;
&lt;br /&gt;
{{Term|post-selection|The process of accepting or rejecting an input conditioned on some random event occurring in a desired fashion. For example, guessing the solution to an NP-complete problem then killing yourself if the solution was incorrect could be viewed as an anthropic form of post-selection, as in any universes in which you are still alive, your random choice of a solution was correct. This intuition leads to classes such as {{zcls|b|bpppath|BPP&amp;lt;sub&amp;gt;path&amp;lt;/sub&amp;gt;}} and {{zcls|p|postbqp|PostBQP}}.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;problem:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A function from inputs to outputs, which we want an algorithm to compute.  A crossword puzzle is not a problem; it's an &amp;lt;i&amp;gt;instance&amp;lt;/i&amp;gt;.  The set of &amp;lt;i&amp;gt;all&amp;lt;/i&amp;gt; crossword puzzles is a problem. ''See also:'' [[#decision-problem|decision problem]], [[#language|language]].&lt;br /&gt;
&lt;br /&gt;
{{Term|id=promise-problem|promise problem|A problem for which the input is guaranteed to have a certain property.  I.e. if an input doesn't have that property, then we don't care what the algorithm does when given that input.}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;pspeedup&amp;quot;&amp;gt;&amp;lt;b&amp;gt;p-optimal or p-speedup:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; (aka polynomially optimal or polynomial speedup) A Turing machine &amp;lt;math&amp;gt;M&amp;lt;/math&amp;gt; accepting a language &amp;lt;math&amp;gt;L&amp;lt;/math&amp;gt; is polynomially optimal if for any other &amp;lt;math&amp;gt;M'&amp;lt;/math&amp;gt; accepting &amp;lt;math&amp;gt;L&amp;lt;/math&amp;gt;, there exists a polynomial &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; such that for all inputs &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;: &amp;lt;math&amp;gt;\mathrm{time}_M(x)\leq p(|x|,\mathrm{time}_{M'}(x))&amp;lt;/math&amp;gt;. A language with no p-optimal &amp;lt;math&amp;gt;M&amp;lt;/math&amp;gt; is said to have p-speedup. p-optimal was defined by Krajicek and Pudlak [[zooref#kp89|[KP89]]]; see also Messner [[zooref#mes99|[Mes99]]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;puniform&amp;quot;&amp;gt;&amp;lt;b&amp;gt;P-uniform or P-nonuniform:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A family of Boolean circuits is P-uniform if a Turing machine given input string &amp;lt;math&amp;gt;1^n&amp;lt;/math&amp;gt; (1 repeated n times) can output the member of the family with &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; inputs in time polynomial in n. A ''problem'' is P-nonuniform if no family of minimal Boolean circuits for the problem is P-uniform.&lt;br /&gt;
&lt;br /&gt;
===== Q =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;quantum:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Making use of quantum-mechanical superposition, which is a particular kind of parallel and very fast nondeterministic algorithmic processing that collapses to one value (usually the answer to a problem instance) when its output is observed, captured, or used.  If you don't know what that means, well, I can't explain it in this sentence (try lectures [http://www.scottaaronson.com/democritus/lec9.html 9] and [http://www.scottaaronson.com/democritus/lec10.html 10] from the [http://www.scottaaronson.com/democritus/default.html Democritus course] taught by the Zookeeper).  But it has nothing to do with the original meaning of the word 'quantum' (i.e. a discrete unit).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;quasipolynomial:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;math&amp;gt;O(2^{\log^c n})&amp;lt;/math&amp;gt;, for some constant c.&lt;br /&gt;
&lt;br /&gt;
===== R =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;random access:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; This means that an algorithm can access any element x&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; of a sequence immediately (by just specifying i).  It doesn't have to go through x&amp;lt;sub&amp;gt;1&amp;lt;/sub&amp;gt;,...,x&amp;lt;sub&amp;gt;i-1&amp;lt;/sub&amp;gt; first.  Note that this has nothing directly to do with randomness.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;randomized:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Making use of randomness (as in 'randomized algorithm').  This is probably an unfortunate term, since it doesn't imply that one starts with something deterministic and then 'randomizes' it.  See also Monte Carlo and Las Vegas.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;random-self-reducible&amp;quot;&amp;gt;&amp;lt;b&amp;gt;random self-reducible:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A problem is random self-reducible if the ability to solve a large fraction of instances enables one to solve &amp;lt;i&amp;gt;all&amp;lt;/i&amp;gt; instances.  For example, the discrete logarithm problem is random self-reducible.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;reduction&amp;quot;&amp;gt;&amp;lt;b&amp;gt;reduction:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A result of the form, &amp;quot;Problem A is at least as hard as Problem B.&amp;quot;  This is generally shown by giving an algorithm that transforms any instance of Problem B into an instance of Problem A.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;relativize:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; To add an oracle.  We say a complexity class inclusion (or technique) is &amp;lt;i&amp;gt;relativizing&amp;lt;/i&amp;gt; if it works relative to all oracles.  Since there exist oracles A,B such that {{zcls|p|p}}&amp;lt;sup&amp;gt;A&amp;lt;/sup&amp;gt; = {{zcls|n|np}}&amp;lt;sup&amp;gt;A&amp;lt;/sup&amp;gt; and {{zcls|p|p}}&amp;lt;sup&amp;gt;B&amp;lt;/sup&amp;gt; does not equal {{zcls|n|np}}&amp;lt;sup&amp;gt;B&amp;lt;/sup&amp;gt; {{zcite|BGS75}}, any technique that resolves {{zcls|p|p}} versus {{zcls|n|np}} will need to be nonrelativizing.&lt;br /&gt;
&lt;br /&gt;
===== S =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;satisfiability (SAT):&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; One of the central problems in computer science.  The problem is, given a Boolean formula, does there exist a setting of variables that &amp;lt;i&amp;gt;satisfies&amp;lt;/i&amp;gt; the formula (that is, makes it evaluate to true)?  For example, &amp;lt;math&amp;gt;(a\vee b)\wedge(\neg a\vee\neg b)&amp;lt;/math&amp;gt; is satisfiable: &amp;lt;math&amp;gt;a=\mathrm{true}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;b=\mathrm{false}&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;a=\mathrm{false}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;b=\mathrm{true}&amp;lt;/math&amp;gt; are both satisfying assignments.  But &amp;lt;math&amp;gt;(a\vee b) \wedge (\neg a) \wedge (\neg b)&amp;lt;/math&amp;gt; is unsatisfiable. ''See also'': [[Complexity Garden#sat|Garden entry on satisfiability]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;self-reducible:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A problem is self-reducible if an oracle for the decision problem enables one to solve the associated function problem efficiently.  For example, {{zcls|n|npc|NP-complete}} problems are self-reducible.  See also: [[#downward-self-reducible|downward self-reducible]], [[#random-self-reducible|random self-reducible]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; id=&amp;quot;sensitivity&amp;quot;&amp;gt;&amp;lt;b&amp;gt;sensitivity:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Given a Boolean function {{bfunc}}, the sensitivity &amp;lt;math&amp;gt;s^X(f)&amp;lt;/math&amp;gt; of an input &amp;lt;math&amp;gt;X=x_1\dots x_n&amp;lt;/math&amp;gt; is the number of variables such that flipping them changes the value of &amp;lt;math&amp;gt;f(X)&amp;lt;/math&amp;gt;.  Then &amp;lt;math&amp;gt;s(f)&amp;lt;/math&amp;gt; is the maximum of &amp;lt;math&amp;gt;s^X(f)&amp;lt;/math&amp;gt; over all &amp;lt;math&amp;gt;X&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;size:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; When referring to a string, the number of bits.  When referring to a circuit, the number of gates.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;space:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; The amount of memory used by an algorithm (as in space complexity).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;STOC:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; ACM Symposium on Theory of Computing (held every spring).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;string:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A sequence of 1s and 0s.  (See, it's not just physicists who plumb Nature's deepest secrets -- we computer scientists theorize about strings as well!)&amp;lt;br&amp;gt;&amp;lt;i&amp;gt;Note&amp;lt;/i&amp;gt;: For simplicity, one usually assumes that every character in a string is either 1 or 0, but strings over larger alphabets can also be considered.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;subexponential:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Growing slower (as a function of n) than any exponential function.  Depending on the context, this can either mean &amp;lt;math&amp;gt;2^{o(n)}&amp;lt;/math&amp;gt; (so that the Number Field Sieve factoring algorithm, which runs in about &amp;lt;math&amp;gt;2^{n^{1/3}}&amp;lt;/math&amp;gt; time, is &amp;quot;subexponential&amp;quot;); or &amp;lt;math&amp;gt;2^{o(n^{\epsilon})}&amp;lt;/math&amp;gt; for every &amp;lt;math&amp;gt;\epsilon&amp;gt;0&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;superpolynomial:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Growing faster (as a function of &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;) than any polynomial in &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;.  This is &amp;lt;i&amp;gt;not&amp;lt;/i&amp;gt; the same as exponential: for example, &amp;lt;math&amp;gt;n^{\log n}&amp;lt;/math&amp;gt; is superpolynomial, but not exponential.&lt;br /&gt;
&lt;br /&gt;
===== T =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;tape:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; The memory used by a Turing machine.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;&amp;amp;Theta; (Theta):&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; For a function &amp;lt;math&amp;gt;f(n)&amp;lt;/math&amp;gt; to be &amp;lt;math&amp;gt;\Theta(g(n))&amp;lt;/math&amp;gt; means that &amp;lt;math&amp;gt;f(n) = O(g(n))&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;f(n) = \Omega(g(n))&amp;lt;/math&amp;gt; (i.e. they grow at the same rate).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;tight bound:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; An upper bound that matches the lower bound, or vice versa.  I.e. the best possible bound for a function.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;total:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A total function is one that is defined on every possible input.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;truth table:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A table of all &amp;lt;math&amp;gt;2^n&amp;lt;/math&amp;gt; possible inputs to a Boolean function, together with the corresponding outputs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;truth table reduction:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A Turing reduction in which the oracle queries must be nonadaptive.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Turing reduction:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A reduction from problem A to problem B, in which the algorithm for problem A can make queries to an oracle for problem B.  (Contrast with many-one reduction.)&lt;br /&gt;
&lt;br /&gt;
===== U =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;unary:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; An inefficient encoding system, in which the integer n is denoted by writing n 1's in sequence.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;uniform:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A single algorithm is used for all input lengths.  For example, Turing machines are a uniform model of computation -- one just has to design a single Turing machine for multiplication, and it can multiply numbers of any length.  (Contrast with the circuit model.)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;upper bound:&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; A result showing that a function grows &amp;lt;i&amp;gt;at most&amp;lt;/i&amp;gt; at a certain asymptotic rate.  For example, any algorithm for a problem yields an upper bound on the complexity of the problem.&lt;br /&gt;
&lt;br /&gt;
===== W =====&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;b&amp;gt;with high probability (w.h.p.):&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt; Usually this means with probability at least 2/3 (or any constant greater than 1/2).  If an algorithm is correct with 2/3 probability, one can make the probability of correctness as high as one wants by just repeating several times and taking a majority vote.&amp;lt;br&amp;gt;&amp;lt;i&amp;gt;Note&amp;lt;/i&amp;gt;: Sometimes people say &amp;quot;high probability&amp;quot; when they mean &amp;quot;non-negligible probability.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{{Term|word|Given an [[#alphabet|alphabet]] &amp;lt;math&amp;gt;\Sigma&amp;lt;/math&amp;gt;, a word is a string &amp;lt;math&amp;gt;w \in \Sigma^*&amp;lt;/math&amp;gt;. That is, a string of characters drawn from &amp;lt;math&amp;gt;\Sigma&amp;lt;/math&amp;gt;. Using the alphabet &amp;lt;math&amp;gt;\Sigma = \{a, b, \dots, z\}&amp;lt;/math&amp;gt;, some valid words include &amp;lt;math&amp;gt;word&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;science&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;foobar&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;fotmewwi&amp;lt;/math&amp;gt;.}}&lt;br /&gt;
&lt;br /&gt;
===== X =====&lt;br /&gt;
===== Y =====&lt;br /&gt;
===== Z =====&lt;br /&gt;
{{Term|id=zeroone-law|zero-one law|Any theorem which specifies that the probability of an event is either zero or one is known as a zero-one law.}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Computational Complexity]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>