[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 04/11 23:29 / Filesize : 546 KB / Number-of Response : 1091
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Inter-universal geometry と ABC予想 (応援スレ) 71



361 名前:132人目の素数さん [2024/05/05(日) 23:29:55.71 ID:HvNo6+XN.net]
ご参考
”結論:多くのプログラム言語に対して、その言語で書かれたプログラムの停止性は、決定可能ではない”

//www.cs.tsukuba.ac.jp/~kam/lecture/plm2017/
2017年度の『プログラム言語論』亀山幸義筑波大学情報科学

//www.cs.tsukuba.ac.jp/~kam/lecture/plm2017/termination.pdf
講義資料
プログラム言語論亀山幸義筑波大学情報科学類No.4(停止性)

停止性問題
以下の性質を持つプログラムHは存在するか?
・Hは2引数関数である。
・H(P,x)はどんな引数P,xに対しても、有限時間で止まり、yesかnoを返す。
・プログラムPが入力xに対して停止するとき、H(P,x)はyesを返す。
・プログラムPが入力xに対して停止しない(無限ループする)とき、H(P,x)はnoを返す。このようなHが存在するか、という問題が、停止性問題(Halting Problem)である。
・この章では、最終的に、「そのようなHは、存在しない」ことが示される。

第2ステップ:Kを使った推論その1
プログラムKに、引数としてK自身を渡すことを考える。
(Case1)もし、K(K)が停止してyesを返したら、
・Kの定義から、H(K,K)はnoを返す。
・よって、Hの定義から、プログラムKが入力Kに対して停止しない。
・よって、K(K)は停止してyesを返し、かつ、停止しない、ということになり、矛盾である。
(Case2)もし、K(K)が無限ループなら、
・Kの定義から、H(K,K)はyesを返す。
・よって、Hの定義から、プログラムKが入力Kに対して停止する。
・よって、K(K)は無限ループかつ、停止する、ということになり、矛盾である。よって矛盾である。

第3ステップ
結論:多くのプログラム言語に対して、その言語で書かれたプログラムの停止性は、決定可能ではない。

付録:Turing機械とプログラム言語
Turing機械と同等の計算能力を持つプログラム言語や計算モデルは、どんなものでも、停止性問題の解となるものは存在しない。
・(型のない)ラムダ計算の体系帰納的関数の体系
・(理想化された)C言語で書けるプログラム(理想化された)
・OCaml言語で書けるプログラム(理想化された)
・Scheme/Lisp言語で書けるプログラム(理想化された)
・Java言語で書けるプログラム
なお、「Turing機械と同等の計算能力を持つプログラム言語(あるいは計算モデル)」のことをTuringcomplete(チューリングの意味で完全)と呼ぶことがある。






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´Д`)<546KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef