Fundamental Structures OF Computer Science (Part 1 Introduction to Automata and Formal Languages)

dc.contributor.authorPeretyat’kin M.G.
dc.date.accessioned2026-04-21T04:42:08Z
dc.date.available2026-04-21T04:42:08Z
dc.date.issued2001
dc.description.abstractComputations are designed to solve problems. Programs arc descriptions of computations written for execution on computers. The field of computer science is concerned with the development of methodologies for designing programs, and with the development of computers for executing programs. It is therefore of central importance for those involved in the field that the characteristics of programs, computers, problems, and computation be fully understood. Moreover, to clearly and accurately communicate intuitive thoughts about these subjects, a precise and well-defined terminology is required. This book explores some of the more important terminologies and questions concerning programs, computers, problems, and computation. The exploration reduces in many cases to a study of mathematical theories, such as those of automata and formal languages; theories that are interesting also in their own right. These theories provide abstract models that are easier to explore, because their formalisms avoid irrelevant details. The material in this book gradually increases in complexity. In many cases. new topics are treated as refinements of old ones, and their study is motivated through their association to programs. Chapter 1 is concerned with the definition of some basic concepts. It starts by considering the notion of strings, and the role that strings have in presenting information. Then it relates the concept of languages to the notion of strings, and introduces grammars for characterizing languages. The chapter continues by introducing a class of programs. The choice is made for a class. which on one hand is general enough to model all programs, and on the other hand is primitive enough to simplify the specific investigation of programs. In particular, the notion of nondeterminism is introduced through programs. The chapter concludes by considering the notion of problems, the relationship between problems and programs, and some other related notions. Chapter 2 studies finite-memory programs. The noticn of a state is introduced as an abstraction for a location in a finite-memory program as well as an assignment to the variables of the program. The notion of state is used to show how finite-memory programs can be modeled by abstract computing machines, called finite-state transducers. The transducers arc essentially sets of states with rules for transition between the states. The inputs that can be recognized by finite-memory programs are characterized in terms of a class of grammars, called regular grammars. The limitations of finite-memory programs, closure properties for simplifying the job of writing finite-memory programs, and decidable properties of such programs are also studied.
dc.identifier.citationPeretyat’kin M.G / Fundamental Structures OF Computer Science (Part 1 Introduction to Automata and Formal Languages) / Suleyman Demiral University / 2001
dc.identifier.urihttps://repository.sdu.edu.kz/handle/123456789/2632
dc.language.isoen
dc.publisherSuleyman Demiral University
dc.subjectcomputer science
dc.subjectautomation
dc.subjectformal languages
dc.subjectFinite Automata
dc.subjectRecursion
dc.titleFundamental Structures OF Computer Science (Part 1 Introduction to Automata and Formal Languages)
dc.typeBook

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
27032026.pdf
Size:
10.58 MB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
12.6 KB
Format:
Item-specific license agreed to upon submission
Description: