The Chomsky hierarchy arranges formal languages based on the type of grammar needed to describe them. Type-0 languages are the most powerful, including all recursively enumerable languages and are described by unrestricted grammars. Type-1 languages are context-sensitive and described by context-sensitive grammars. Type-2 languages are context-free and accepted by pushdown automata using context-free grammars. Type-3, the least powerful type, are regular languages described by regular grammars and recognized by finite state automata. Each language type in the hierarchy includes all languages of less restrictive types.