Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

Formal Languages And Automata Theory
Formal Languages And Automata Theory
Formal Languages And Automata Theory
Ebook180 pages1 hour

Formal Languages And Automata Theory

Rating: 0 out of 5 stars

()

Read preview

About this ebook

n the first few chapters, the book presents the necessary basic material for the study of automata theories. Examples of topics included are: regular languages and Kleene's Theorem; minimal automata and syntactic monoids; the relationship between context-free languages and pushdown automata; and Turing machines and decidability. This book facilitates students a more informal writing style while providing the most accessible coverage of automata theory, solid treatment on constructing proofs, many figures and diagrams to help convey ideas, and sidebars to highlight related material. Each chapter offers an abundance of exercises for hands-on learning.

LanguageEnglish
PublisherAjit Singh
Release dateOct 6, 2019
ISBN9780463725177
Formal Languages And Automata Theory
Author

Ajit Singh

Ajit Singh is equally interested in fiction and non-fiction and has written many books in English, Hindi, and Urdu. He has performed in Haryana, published his prose and verse in India and Pakistan, and participated in an international online poetry symposium organized by Bazm-e-Urdu, Qatar.He lives in a village, teaches science, and comes from a farming family. His father served as a major in the Parachute Regiment of the Indian Army.Ajit plays cricket, football, volleyball, basketball, badminton, and chess. He loves harmonium and flute, sings folk songs, and also enjoys gardening in his spare time. His nickname is "Badal," which means "cloud" in English.

Read more from Ajit Singh

Related to Formal Languages And Automata Theory

Related ebooks

Computers For You

View More

Related articles

Reviews for Formal Languages And Automata Theory

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    Formal Languages And Automata Theory - Ajit Singh

    Copyrighted Material

    Formal Languages And Automata Theory

    Copyright © 2019 by Ajit Singh, All Rights Reserved.

    No part of this publication may be reproduced, stored in a retrieval system or transmitted, in any form or by any means� electronic, mechanical, photocopying, recording or otherwise� without prior written permission from the author, except for the inclusion of brief quotations in a review.

    For information about this title or to order other books and/or electronic media, contact the publisher:

    Ajit Singh

    ajit_singh24@yahoo.com

    http://www.ajitvoice.in

    Published by Ajit Singh at Smashwords.

    Library of Congress Control Number: (N/A)

    ISBN: A/F

    Cover and Interior design: Ajit Singh.

    Smashwords Edition, License Notes

    This ebook is licensed for your personal enjoyment only. This ebook may not be re-sold or given away to other people. If you would like to share this book with another person, please purchase an additional copy for each recipient. If you’re reading this book and did not purchase it, or it was not purchased for your use only, then please return to your favorite ebook retailer and purchase your own copy. Thank you for respecting the hard work of this author.

    Preface

    This book is the culmination of my fascination for the subject of computation and its applications. It has been designed for students of computer science at the graduate/postgraduate level and is logically conceived, self-contained, well-organised and user-friendly.

    Expressing everything clearly, concisely  and correctly requires a certain degree of formalization. I assume basic knowledge of discrete mathematics, only. In particular, it may be helpful if the reader has a basic understanding of what constitutes a proof of a mathematical assertion. All the remaining material is introduced in the text. Fundamental concepts are exemplified, too. I am strongly convinced that a solid compromise between formal correctness and intuitive ideas may help both the students and instructors to enjoy the wealth of insight this book is aiming to present.

    Main emphasis is put on the interaction of theory and practice in informatics. Theory must deal with problems of practical importance and practical informatics needs a solid foundation to develop its full potential. Therefore, two thirds of the book are devoted to formal languages and automata theory.

    Formal languages are indispensable for applied computer science, since one meets them everywhere. Thus, i cover grammars (formalizing the generation), automata (formalizing the acceptance) and their interaction for regular and context-free languages.

    The remaining third formalizes the intuitive notion of algorithm by introducing partial recursive functions and Turing machines. We show the equivalence of these two models and prove the existence of a universal Turing machine. That is, there is one computing device that can perform every possible computation. Finally, i show that there are problems which cannot be solved at all by any computer. Here i start with the halting problem, continue with Post's correspondence problem, and apply the theory developed to obtain a rather complete picture concerning problems arising naturally in formal language theory.

    The book contains an in-depth coverage of all the topics related to the theory of computation as mentioned in the syllabuses of B.E., M.C.A. and M.Sc. (Computer Science) of various universities. Sufficient amount of theoretical inputs supported by a number of illustrations are included for those who take deep interest in the subject. In the first few chapters, the book presents the necessary basic material for the study of automata theories. Examples of topics included are: regular languages and Kleene's Theorem; minimal automata and syntactic monoids; the relationship between context-free languages and pushdown automata; and Turing machines and decidability. This book facilitates students a more informal writing style while providing the most accessible coverage of automata theory, solid treatment on constructing proofs, many figures and diagrams to help convey ideas, and sidebars to highlight related material. Each chapter offers an abundance of exercises for hands-on learning.

    Dedication

    This is for you,

    Mother & Father......

    Acknowledgement

    To my Mother and Father, it's impossible to thank you adequately for everything you've done, from loving me unconditionally to raising me in a stable household, where you instilled traditional values and taught me to celebrate and embrace life.

    And to my brother Er Ranbir Singh thanks for all of the consistent support  of growing up, and for your continued cooperation and encouragement.

    A special thank you to my daughter Samiksha Singh, for showing me that anything is possible with faith, hard work and determination.

    I would like to conclude the acknowledgement with the most important: I thank Prof. Dr. Bal Gangadhar Prasad, Ex HOD, Department of Mathematics,  Patna University for his consistent support throughout the long writing times.

    I did my best to produce an error-free book and to mention the source of every piece of information.

    Contents

    Mathematical Preliminaries: Set Functions and Relations:                                               

    Finite Automata and Regular Expressions

    Basic Concepts  of Finite State Systems

    Deterministic and Non-Deterministic Finite Automata

    Finite Automata with e-moves

    Regular Expressions

    Minimization of Finite Automata

    Mealy and Moore Machines

    Two-Way Finite Automata

    Regular sets & Regular Grammars

    Basic Definitions of Formal Languages and Grammars

    Regular Sets and Regular Grammars

    Closure Properties of Regular Sets

    Pumping Lemma for Regular Sets

    Decision Algorithm for Regular Sets

    Minimization of Finite Automata

    Context Free Grammars and Languages

    Context Free Grammars and Languages

    Derivation Trees

    Simplification  of Context Free Grammars

    Normal Forms

    Pumping Lemma for CFL

    Closure properties of CFLs

    Decision Algorithm for CFL

    Push down Automata and Deterministic CFL

    Informal Description

    Definitions

    Push-Down Automata and Context free Languages

    Parsing and Push-Down Automata

    Universal Turing Machines and Undecidability

    Design and  Techniques for Construction  of Turing Machines

    Multi-tape Turing Machine

    Simulating one tape TM with multi-tape TM

    Non-Deterministic Turing Machine

    Church-Turing Thesis

    Universal Turing Machine

    Undecidability

    Intractability

    Complexity Classes P/NP/NP-Complete

    Relationship between classes of languages

    Undecidability of PCP

    Halting Problem

    Chapter 1 - Mathematical Preliminaries: Set Functions and Relations

    Sets

    A set is a collection of well defined objects. Usually the element of a set has common properties. e.g. all the student who enroll for a course theory of computation make up a set.

    Examples

    The set of even positive integer less than 20 can be expressed by

    E= {4,6,8,10,12,14,16,18}

    Or

    E=    {x|x is even and 4

    Finite and Infinite Sets

    A set is finite if it contains  finite number of elements. And infinite otherwise. The empty set has no element and is denoted by ɸ.

    Cardinality of set

    It is a number of element in a set. The cardinality of set E is

    |E|=8.

    Subset

    A set A is subset of a set B if each element of A is also element of B and is denoted A ⊆ B.

    Throughout this book, we will assume that you know the following mathematical concepts:

    1. A set is a collection of well-defined objects. Examples are (i) the set of all Dutch Olympic Gold Medallists, (ii) the set of all pubs in Ottawa, and (iii) the set of all even natural numbers.

    2. The set of natural numbers is N = {1, 2, 3, . . .}.

    3. The set of integers is Z = {. . . , −3, −2, −1, 0, 1, 2, 3, . . .}.

    4. The set of rational numbers is Q = {m/n : m ∈ Z, n ∈ Z, n 6= 0}.

    5. The set of real numbers is denoted by R.

    6. If A and B are sets, then A is a subset of B, written as A ⊆ B, if every element of A is also an element of B. For example, the set of even natural numbers is a subset of the set of all natural numbers. Every set A is a subset of itself, i.e., A ⊆ A. The empty set is a subset of every set A, i.e., ∅ ⊆ A.

    7. If B is a set, then the power set P(B) of B is defined to be the set of all subsets of B:

    P(B) = {A : A ⊆ B}.

    Observe that ∅ ∈ P(B) and B ∈ P(B).

    Set operations

    1. Union

    The union of two set has elements, the elements of one of the two sets and possibly both. Union is denoted by A U B.

    2. Intersection

    The intersection of two sets os the collection of all elements of the two sets which are common and is

    denoted by A⋂B.

    3. Differences

    The difference of two sets A and B, denoted by A - B, is the set of all elements that are in the set A 

    but not in the set B.

    4. Cartesian product of A and B is defined as

        A × B = {(x, y) : x ∈ A and y ∈ B},

    5. Complement of A is defined as

       

    Enjoying the preview?
    Page 1 of 1