180 likes | 198 Views
This lecture discusses the complexity of first-order logic, including data complexity, query complexity, and combined complexity. It covers topics such as AC0, uniform AC0, PARITY, FO(All), and the relationship between FO and AC0. The lecture also presents theorems and proofs related to data complexity and query complexity, as well as the PSPACE-completeness of combined complexity.
E N D
Finite Model TheoryLecture 6 Complexity of FO
Outline • Data Complexity • Query Complexity and Combined Complexity
Complexities • Data Complexitythe complexity of {A | A²f} for fixed f • Query Complexitythe complexity of {f | A²f} for fixed A • Combined complexitythe complexity of {(A, f) | A²f}
Data Complexity For every f, the complexity of {A | A²f} is in PTIME [Why ?] However, it is much lower than PTIME (next)
Data Complexity Theorem The data complexity of FO is uniform AC0 What is AC0 ? What is uniform AC0 ? We will review next, but most importantly: uniform-AC0µ LOGSPACE µ PTIME
AC0 Fix n ¸ 0. A boolean circuit with n inputs, C, is a rooted DAG with nodes labeled with labels from:{Æ, Ç, :, x1, …, xn} size(C) = number of gates depth(C) = length of longest path
AC0 Definition A language L µ {0,1}* is in non-uniform AC0 if there exists d > 0, a polynomial p(n), and a family of circuits (Cn)n ¸ 0 s.t.: size(Cn) · p(n) depth(Cn) · d, and 8 w 2 {0,1}*: w 2 L iff Cn(w) = true, where n=|w|
FO and AC0 Let All be a vocabulary consisting of all relations on N All = P(N) [ P(N2) [ P(N3) [ … In All we have names for <, +, /, … Definition FO(All) = FO over vocabulary All Interpretation: consider only ordered domains, assimilate with {0, 1, 2, …, n-1}. Each relation R on N is interpreted as its restriction to {0, 1, …, n-1}. Note: we can express EVEN in FO(All) [why ?]
FO and AC0 Theorem FO(All) µ non-uniform AC0 Proof sketch in class (hint: it’s simple…)
PARITY • Let s = {U} (a unary table) • The property PARITY is true on models A where |UA| is even • PARITY and EVEN are very related, but…
Parity Theorem [Furst-Saxe-Sipser, Ajtai] PARITY is not expressible in non-uniform AC0 Corollary PARITY is not expressible in FO(All) Comment: i.e. there is no formula in FO over vocabulary {U} [ All that checks if |U| is even. Corollary Graph connectivity is not expressible in FO(All) [why ?]
Discussion • EVEN is not expressible in FO • But EVEN is expressible in FO(<, +) • PARITY is not expressible inFO(<, +, exp, …, any-relation-on-N, ….) !
Uniform AC0 Non-uniform AC0 can express non-computable properties ! Need to restrict the association n ! Cn to something easily computable Complex definitions in complexity theory textbooks… Better: define uniform AC0 = FO(+, £) Alternatively FO(+, £) = FO(<, BIT)
Combined Complexity Theorem The combined complexity is in PSPACE [proof: in classs] Note: proof in book is wrong.
Combined Complexity Recursive function: function Eval(f)iff = 9 x.ythenforall a 2 A doif Eval(y[a/x]) = true then return truereturn falseiff = 8 x.ythenforall a 2 A doif Eval(y[a/x]) = false then return false return trueiff = y1Æy2then … iff = R(a1, …, ak) then …
Query Complexity Theorem There exists a structure A s.t. the query complexity {f | A²f} is PSPACE complete
Query Complexity Proof. Recall the Satisfiability of Quantified Boolean Formulas problem (QBF): is a QB formula F true ? Example:F = 9 X18 X28 X3 (X1Æ X2Ç: X1Æ X3) is it true ? Note: boolean satisfiability (the NP-hard problem) is in QBF [why ?]
Query Complexity Theorem [Stockmeyer] QBF is PSPACE complete Return to our proof: reduction from QBF. Given QBF formula F, let s = {U}, where U = unary A = (A, UA), s.t. A = {0,1}, UA = {1} Translate F (a QB formula) to f (an FO formula) s.t. F is true iff A²f [how ?]