Notes of theory of computation