The model used is based on interactive proof systems, probabilistically checkable proofs, program checkers, and CS proofs. Complexity Theory Boolean branching programs are simple, yet powerful models of computation. A fundamental issue in complexity theory is the understanding of determinism vs. non-determinism. Lattices play an important role in many algebraic and combinatorial algorithms. A long standing open problem has been to understand the complexity of computing the shortest non-zero vector in a lattice.
Descriptive complexity is the complexity of describing problems in some logical formalism.
There is often a close connection between the descriptive complexity of a problem and its computational complexity.