Class Description

FO[t(n)]: Iterated First-Order logic

Let t(n) be a function from integers to integers.(∀xP)Q abbreviates (∀x(P⇒Q)) and (∃xP)Q abbreviates (∃x(P∧Q)).

A quantifier block is a list (Q1x1.ϕ1)...(Qkxk.ϕk) where the ϕis are quantifier free FO-formulae and each Qis is either ∀ or ∃.If Q is a quantifier block then [Q]t(n) is the block consisting of t(n) iterated copies of Q. Note that there are k*t(n) quantifiers in the list, but only k variables; each variable is used t(n) times.

FO[t(n)] consists of the FO-formulae with quantifier blocks that are iterated Θ(t(n)) times.

In Descriptive complexity we can see that :

Linked From 4 Classes

AC: Unbounded Fanin Polylogarithmic-Depth Circuits

ACi is the class of decision problems solvable by a nonuniform family of Boolean circuits, with polynomial size, depth O(logi(n)), and unbounded fanin. The gates allowed are AND, OR, and NOT.

Then AC is the union of ACi over all nonnegative i.

ACi is contained in NCi+1; thus, AC = NC.

AC1 contains NL.

For a random oracle A, (ACi)A is strictly contained in (ACi+1)A, and (uniform) ACA is strictly contained in PA, with probability 1 [Mil92].

FO-uniform AC with depth t(n) is equal to FO[t(n)].

More about...


FO(LFP): First-order with least fixed point

FO(LFP) is the set of boolean queries definable with first-order fixed-point formulae where the partial fixed point is limited to be monotone, which means that if the second order variable is P, then Pi(x) always implies Pi+1(x).

We can obtain the monotony by restricting the formula ϕ to have only positive occurrences of P (i.e. there is an even number of negations before every occurrence of P). We can also describe LFP(ϕP,x) as syntactic sugar of PFP(ψP,x) where ψ(P,x)=ϕ(P,x)∨P(x).

Thanks to monotonicity we only add and never remove vectors to the truth table of P, and since there is only nk possible vectors we always find a fixed point before nk iterations. Hence it was shown in [Imm82] that FO(LFP)=P. This definition is equivalent to FO(nO(1)).

More about...


NC: Nick's Class

(Named in honor of Nick Pippenger.)

NCi is the class of decision problems solvable by a uniform family of Boolean circuits, with polynomial size, depth O(logi(n)), and fan-in 2.

Then NC is the union of NCi over all nonnegative i.

Also, NC equals the union of PT/WK(logkn, nk)/poly over all constants k.

NCi is contained in ACi; thus, NC = AC.

Contains NL, in fact NL is contained in NC2.

Generalizations include RNC and QNC.

[IN96] construct a candidate pseudorandom generator in NC based on the subset sum problem.

For a random oracle A, (NCi)A is strictly contained in (NCi+1)A, and uniform NCA is strictly contained in PA, with probability 1 [Mil92].

In descriptive complexity, NC can be defined by FO[log⁡(n)O(1)]

Log space uniform NC is contained in ATIME(poly(log(n))) = polyL [RUZ81].

More about...


SO[t(n)]: Iterated Second-Order logic

SO[t(n)] is to SO as FO[t(n)] is to FO. But we now also have second-order quantifier in the quantifier block.

In Descriptive complexity we can see that :

More about...