Computability and complexity : from a programming perspective
著者
書誌事項
Computability and complexity : from a programming perspective
(MIT Press series in the foundations of computing)
MIT Press, c1997
大学図書館所蔵 全47件
  青森
  岩手
  宮城
  秋田
  山形
  福島
  茨城
  栃木
  群馬
  埼玉
  千葉
  東京
  神奈川
  新潟
  富山
  石川
  福井
  山梨
  長野
  岐阜
  静岡
  愛知
  三重
  滋賀
  京都
  大阪
  兵庫
  奈良
  和歌山
  鳥取
  島根
  岡山
  広島
  山口
  徳島
  香川
  愛媛
  高知
  福岡
  佐賀
  長崎
  熊本
  大分
  宮崎
  鹿児島
  沖縄
  韓国
  中国
  タイ
  イギリス
  ドイツ
  スイス
  フランス
  ベルギー
  オランダ
  スウェーデン
  ノルウェー
  アメリカ
注記
Includes bibliographical references (p. [447]-455) and index
内容説明・目次
内容説明
Computability and complexity theory should be of central concern to practitioners as well as theorists. Unfortunately, however, the field is known for its impenetrability. Neil Jones's goal as an educator and author is to build a bridge between computability and complexity theory and other areas of computer science, especially programming. In a shift away from the Turing machine- and Goedel number-oriented classical approaches, Jones uses concepts familiar from programming languages to make computability and complexity more accessible to computer scientists and more applicable to practical programming problems.
According to Jones, the fields of computability and complexity theory, as well as programming languages and semantics, have a great deal to offer each other. Computability and complexity theory have a breadth, depth, and generality not often seen in programming languages. The programming language community, meanwhile, has a firm grasp of algorithm design, presentation, and implementation. In addition, programming languages sometimes provide computational models that are more realistic in certain crucial aspects than traditional models.
New results in the book include a proof that constant time factors do matter for its programming-oriented model of computation. (In contrast, Turing machines have a counterintuitive "constant speedup" property: that almost any program can be made to run faster, by any amount. Its proof involves techniques irrelevant to practice.) Further results include simple characterizations in programming terms of the central complexity classes PTIME and LOGSPACE, and a new approach to complete problems for NLOGSPACE, PTIME, NPTIME, and PSPACE, uniformly based on Boolean programs.
Foundations of Computing series
目次
- Part 1 Toward the theory: introduction
- the WHILE language
- programs as data objects. Part 2 Introduction to computability: self-interpretation - universal program for WHILE and I
- elements of computability theory
- metaprogramming, self-application, and compiler generation
- other sequential models of computation
- robustness of computability
- computability by functional languages (partly by T.AE. Mongensen)
- some natural unsolvable problems. Part 3 Other aspects of computability theory: Hilbert's tenth problem (by M.H. Sorensen)
- inference systems and Godel's incompleteness theorem
- computability theory based on numbers
- more abstract approaches to computability . Part 4 Introduction to complexity: overview of complexity theory
- measuring time usage
- time usage of tree-manipulating programs
- robustness of time-bounded computation
- linear and other time hierarchies for WHILE programs
- the existence of optimal algorithms (by A>M> Ben-Amram)
- space-bounded computations
- nondeterministic computations
- a structure for classifying the complexity of various problems
- characterizations of LOGSPACE and PTIME by GOTO programs. Part 5 Complete problems: completeness and reduction of one problem to another
- complete problems for PTIME
- complete problems for NPTIME
- complete problems for PSPACE. Part 6 Appendix: a mathematical terminology and concepts.
「Nielsen BookData」 より