Lecture Notes On Regular Languages And Finite Automata