Theory of Computation (a brief introduction)