Instructor Profile:
Dr. Pushpalata Ganesh Aher
Assistant Professor, School of Computer Science and Engineering, Sandip University, Nashik
Dr. Pushpalata Ganesh Aher is an accomplished academic and researcher with a strong background in Information Technology and Computer Science. She earned her Bachelor of Engineering (B.E) degree in Information Technology from P.V.G. College of Engineering, Nashik (affiliated with Savitribai Phule Pune University, SPPU), followed by a Master of Technology (M.Tech) degree in Computer Engineering from Sandip Institute of Technology and Research Centre, Nashik (SPPU). Dr. Aher further pursued her PhD in Computer Science and Engineering at Sandip University, Nashik.
With over 7 years of experience in academia, Dr. Aher is currently serving as an Assistant Professor at the School of Computer Science and Engineering, Sandip University. Her expertise spans across the fields of Deep Learning, Machine Learning, and Data Mining. She is a prolific researcher, having published approximately 15 papers in various International Journals and Conferences, with some of her work featured in prestigious SCI and Scopus-indexed journals. Additionally, Dr. Aher has made significant contributions to innovation, holding 3 patents, 1 book, and 1 copyright to her name.
Dr. Aher’s commitment to advancing knowledge in her field and her passion for teaching makes her a valuable contributor to the academic community, and her participation in Massive Open Online Courses (MOOCs) aims to extend her expertise to a wider audience.
Course Outline: Theory of Automation – Types of Finite Automata
This course offers a comprehensive understanding of the theory of finite automata and its various types, laying the foundation for advanced studies in computation and formal languages. The course is structured into four modules, each focusing on key concepts and applications of finite automata.
Module 1: Introduction to Finite Automata
- Overview of Automata Theory: Introduction to the mathematical framework of automata theory and its significance in computation.
- Finite Automata Basics: Definition and structure of finite automata (FA), including states, transitions, input alphabets, and acceptance.
- Deterministic Finite Automata (DFA): Explanation of DFA, formal definitions, examples, and acceptance of regular languages.
- Non-Deterministic Finite Automata (NFA): Understanding NFAs, differences between DFA and NFA, formal representation, and language acceptance.
Module 2: Equivalence and Minimization of Finite Automata
- Equivalence of DFA and NFA: Proof of the equivalence of deterministic and non-deterministic finite automata.
- Subset Construction Method: Conversion from NFA to DFA using subset construction.
- Minimization of DFA: Techniques for minimizing the number of states in a DFA, including equivalence classes and partitioning.
- Applications of Finite Automata: Practical applications in lexical analysis, text searching, and pattern matching.
Module 3: Variants of Finite Automata
- Epsilon (ε) – NFA: Definition and properties of ε-NFA, ε-transitions, and conversion to NFA/DFA.
- Two-Way Finite Automata: Introduction to two-way finite automata and their enhanced capabilities over one-way finite automata.
- Finite Automata with Output: Mealy and Moore machines, formal definitions, differences, and examples of automata with output.
- Finite Automata and Regular Expressions: Relationship between finite automata and regular expressions, construction of finite automata from regular expressions, and vice versa.
Module 4: Advanced Concepts and Applications
- Closure Properties of Finite Automata: Detailed analysis of closure properties such as union, intersection, complementation, and concatenation for regular languages.
- Limitations of Finite Automata: Exploration of the limitations of finite automata in accepting non-regular languages and introduction to the pumping lemma.
- Decision Properties of Regular Languages: Decidability of properties such as emptiness, finiteness, and equality of languages accepted by finite automata.
- Real-World Applications: Automata in artificial intelligence, control systems, and formal verification.
Each module provides a strong conceptual foundation and practical insights into finite automata, equipping learners with the knowledge required for further study in automata theory, formal languages, and computational models.