90 likes | 211 Vues
This lecture reviews regular languages, exploring definitions through finite state automata (FSA) and regular expressions. It presents two main types of proofs: relative power and closure property proofs, highlighting their relation between computational models. The language class hierarchy is discussed, along with applications of regular languages in various computational scenarios. Key techniques include the Myhill-Nerode theorem and the pumping lemma, which provide methods for proving non-regularity in languages. Understanding these concepts is essential for grasping the fundamental properties of computational languages.
E N D
Lecture 24 • Regular languages review • Several ways to define regular languages • Two main types of proofs/algorithms • Relative power of two computational models proofs/constructions • Closure property proofs/constructions • Language class hierarchy • Applications of regular languages
Three definitions • LFSA • A language L is in LFSA iff there exists an FSA M s.t. L(M) = L • LNFA • A language L is in LNFA iff there exists an NFA M s.t. L(M) = L • Regular languages • A language L is regular iff there exists a regular expression R s.t. L(R) = L • Conclusion • All these language classes are equivalent • Any language which can be represented using any one of these models can be represented using either of the other two models
Relative power proofs • These proofs work between two language classes and two computational models • The crux of these proofs are algorithms which behave as follows: • Input: One program from the first computational model • Output: A program from the second computational model that is equivalent in function to the first program
Closure property proofs • These proofs work within a single language class and typically within a single computational model • The crux of these proofs are algorithms which behave as follows: • Input: 1 or 2 programs from a given computational model • Output: A third program from the same computational model that accepts/describes a third language which is a combination of the languages accepted/described by the two input programs
L L1 L1 intersect L2 L LNFA L2 LFSA LFSA M1 M3 M M2 M’ NFA’s FSA’s FSA’s Comparison
REC H ? RE All languages over alphabet S H Language class hierarchy regular
Three remaining topics • Myhill-Nerode Theorem • Provides technique for proving a language is not regular • Also represents fundamental understanding of what a regular language is • Decision problems about regular languages • Most are solvable in contrast to problems about recursive languages • Pumping lemma • Provides technique for proving a language is not regular