Jumping Computation: Updating Automata and Grammars for Discontinuous Information Processing is primarily a theoretically oriented treatment of jumping automata and grammars, covering all essential theoretical topics concerning them, including their power, properties, and transformations. From a practical viewpoint, it describes various concepts, methods, algorithms, techniques, case studies and applications based upon these automata and grammars.
In today’s computerized world, the scientific development and study of computation, referred to as the theory of computation, plays a crucial role. One important branch, language theory, investigates how to define and study languages and their models, which formalize algorithms according to which their computation is executed. These language-defining models are classified into two basic categories: automata, which define languages by recognizing their words, and grammars, which generate them. Introduced many decades ago, these rules reflect classical sequential computation. However, today’s computational methods frequently process information in a fundamentally different way, frequently “jumping” over large portions of the information as a whole. This book adapts classical models to formalize and study this kind of computation properly. Simply put, during their language-defining process, these adapted versions, called jumping automata and grammars, jump across the words they work on.
The book selects important models and summarizes key results about them in a compact and uniform way. It relates each model to a particular form of modern computation, such as sequential, semi-parallel and totally parallel computation, and explains how the model in question properly reflects and formalizes the corresponding form of computation, thus allowing us to obtain a systematized body of mathematically precise knowledge concerning the jumping computation. The book pays a special attention to power, closure properties, and transformations, and also describes many algorithms that modify jumping grammars and automata so they satisfy some prescribed properties without changing the defined language. The book will be of great interest to anyone researching the theory of computation across the fields of computer science, mathematics, engineering, logic and linguistics.