Prompted by Vinay Deolalikar's purported proof of P != NP, I've been reading up on Descriptive Complexity for some background material. 


The major successes of Descriptive Complexity include Fagin's result that $NP=SO\exists$ (that is, the class NP is equal to the class of models of a second-order existential query over some vocabulary), and also that $P = FO(LFP)$ (that the class P is equal to the class of models of first-order queries that might use a Least-Fixed-Point operator), and also $PH = SO$.


My understanding of mathematical logic is quite shaky, but from what I understand, second-order formulas are not expressible in first order logic - how does this fact stand in relation to the results I mentioned above? Why does it not separate NP from P, or PH from P? 



Descriptive complexity theoretic-characterizations of P and NP
Remember that this is finite model theory and it is quite different from logic on infinite structures, e.g. satisfiability of first-order formulas on finite structures is $\Sigma\_1$, whereas the same question is $\Pi\_1$ for general structures (where the formula is satisfiable iff it does not lead to (i.e. prove) contradiction).


It is not known yet if the properties of the **finite structures** expressible in SO are different from those expressible in $FO(LFP)$.


