• Tidak ada hasil yang ditemukan

(1) 数学科の他の情報系科目との連携は 適切だったと

N/A
N/A
Protected

Academic year: 2024

Membagikan "(1) 数学科の他の情報系科目との連携は 適切だったと"

Copied!
32
0
0

Teks penuh

(1)

授業アンケート実施「教員独自の設問」: (1) 数学科の他の情報系科目との連携は

適切だったと思いますか (独立し過ぎ適切重複し過ぎ) (2) 数学科の教職課程(教科「数学」)

コンピュータ区分の科目として 適切な内容だったと思いますか (専門的過ぎ適切概論的過ぎ) (3) 数学科の3年配当の科目として

適切な内容だったと思いますか (専門的過ぎ適切概論的過ぎ)

(2)

期末試験

のお知らせ

7 27 ( ) 15:15 16:15 (60 分試験 )

9-255 教室 ( ここじゃない )

最終回 (7/20) の講義内容まで

学生証必携

—電子計算機概論I 1—

(3)

レポート提出

について

期日:

87()20 時頃まで

内容:

配布プリントのレポート問題の例のような内容 及び授業に関連する内容で、

授業内容の理解または発展的な取組みを アピールできるようなもの 提出方法:

授業時に手渡し

4-574室扉のレポートポスト

電子メイル

(4)

代表的な計算モデル

有限オートマトン

プッシュダウンオートマトン

チューリングマシン

—電子計算機概論I 3—

(5)

プッシュダウンオートマトン

(非決定性)有限オートマトンに

プッシュダウンスタックを取り付けたもの

a b

a b

a

c b

a

a d

a push a push b push c pop pop push d

無限(非有界)の情報を保持できるが、

読み書きは先頭だけ

· · · LIFO (Last In First Out)

(6)

定理:

L : 文脈自由言語 m

L が或るプッシュダウンオートマトンで 認識される

—電子計算機概論I 5—

(7)

プッシュダウンオートマトンでは

認識できない言語の例 同じ文字列 2 回の繰返しから成る文字列全体

A={ww w Σ}

入力を読み直せないのが弱点

−→ より強力な計算モデルが必要

(8)

一つの方法としては、

入力を覚えておくために

プッシュダウンスタックをもう一つ 使えることにする 実際これで真により強い計算モデルが得られる しかし、通常はこれと同等な

次のような計算モデルを考える

· · · チューリングマシン

—電子計算機概論I 7—

(9)

チューリングマシン

有限個の内部状態を持つ

入力データはテープ上に一区画一文字づつ 書き込まれて与えられる

データを読み書きするヘッドがテープ上を 動く

遷移関数は次の形:

内部状態とヘッドが今いる場所の文字とに よって、その場所の文字を書き換え、次の内 部状態に移り、ヘッドを左か右かに動かす

受理状態または拒否状態に達したら停止す るが、停止しないこともある

(10)

(非決定性)チューリングマシンによる

言語 A={ww w Σ} の認識

a b a ... b a a ... b a ...

q0

a ... b a x ... b a ...

qa

y ... b a x ... b a ...

qa

y ... b a x ... b a ...

qb a

b b a

... ... ...

a b

a b

a b

a

a b

a b

a b

a x

a x x qb

y y

—電子計算機概論I 9—

(11)

チューリングマシンT が言語Aを認識する m

A =



w∈Σ

入力 w に対し、

受理状態で停止する 遷移が存在



m

w∈A⇐⇒ 入力 w に対し、

受理状態で停止する遷移が存在

(12)

チューリングマシンT が言語Aを判定する m

TA を認識し、

かつ、全ての入力に対し必ず停止する m

w∈A ⇐⇒ 入力 w に対し、

受理状態で停止する遷移が存在 かつ

w6∈A⇐⇒ 入力 w に対し、

拒否状態で停止する遷移が存在

—電子計算機概論I 11—

(13)

Church-Turingの提唱

「全てのアルゴリズム(計算手順)は、

チューリングマシンで実装できる」

(アルゴリズムと呼べるのは

チューリングマシンで実装できるものだけ)

· · · 「アルゴリズム」の定式化

(14)

Church-Turingの提唱

「全てのアルゴリズム(計算手順)は、

チューリングマシンで実装できる」

(アルゴリズムと呼べるのは

チューリングマシンで実装できるものだけ)

· · · 「アルゴリズム」の定式化

—電子計算機概論I 12—

(15)

Church-Turingの提唱

「全てのアルゴリズム(計算手順)は、

チューリングマシンで実装できる」

(アルゴリズムと呼べるのは

チューリングマシンで実装できるものだけ)

· · · 「アルゴリズム」の定式化

(16)

何故「チューリングマシン」なのか?

およそ計算機で実行したいことは模倣可能 (無限のメモリにランダムアクセスできる

計算機モデル)

多少モデルを変更しても強さが同じ

(モデルの頑強性)

? テープが両方に無限に伸びているか

? ヘッドが動かなくても良いか

? 複数テープチューリングマシン

? 決定性/非決定性 などなど

—電子計算機概論I 13—

(17)

プログラム内蔵方式(von Neumann)

· · · プログラムもデータとして保持

−→ 一つの機械で様々な計算を柔軟に実現

同様の働きをする

チューリングマシン U が構成できる

· · · 万能チューリングマシン

(universal Turing machine)

(18)

プログラム内蔵方式(von Neumann)

· · · プログラムもデータとして保持

−→ 一つの機械で様々な計算を柔軟に実現

同様の働きをする

チューリングマシン U が構成できる

· · · 万能チューリングマシン

(universal Turing machine)

—電子計算機概論I 14—

(19)

プログラム内蔵方式(von Neumann)

· · · プログラムもデータとして保持

−→ 一つの機械で様々な計算を柔軟に実現

同様の働きをする

チューリングマシン U が構成できる

· · · 万能チューリングマシン

(universal Turing machine)

(20)

万能チューリングマシン

全てのチューリングマシンの動作を模倣する 入力: (hMi, w)

hMi : 機械 M の符号化

(プログラムに相当)

w : M に与える入力データ

出力: 機械 M が入力 w を受理するかどうか

—電子計算機概論I 15—

(21)

定理 言語 ATM =

½

(hMi, w) hMi:TM M の符号化 M が入力 w を受理

¾ は認識可能だが、判定可能ではない。

証明は一種の対角線論法による。

(Russell のパラドックス風)

(22)

定理 言語 ATM =

½

(hMi, w) hMi:TM M の符号化 M が入力 w を受理

¾ は認識可能だが、判定可能ではない。

証明は一種の対角線論法による。

(Russell のパラドックス風)

—電子計算機概論I 16—

(23)

参考: Russell のパラドックス X :={A A6∈A} とせよ X ∈X であるか ?

X ∈X と仮定すると、定義より X 6∈X

X 6∈X と仮定すると、定義より X ∈X

−→ どちらにしても矛盾!!

(24)

参考: Russell のパラドックス X :={A A6∈A} とせよ X ∈X であるか ?

X ∈X と仮定すると、定義より X 6∈X

X 6∈X と仮定すると、定義より X ∈X

−→ どちらにしても矛盾!!

—電子計算機概論I 17—

(25)

参考: Russell のパラドックス X :={A A6∈A} とせよ X ∈X であるか ?

X ∈X と仮定すると、定義より X 6∈X

X 6∈X と仮定すると、定義より X ∈X

−→ どちらにしても矛盾!!

(26)

参考: Russell のパラドックス X :={A A6∈A} とせよ X ∈X であるか ?

X ∈X と仮定すると、定義より X 6∈X

X 6∈X と仮定すると、定義より X ∈X

−→ どちらにしても矛盾!!

—電子計算機概論I 17—

(27)

参考: Russell のパラドックス X :={A A6∈A} とせよ X ∈X であるか ?

X ∈X と仮定すると、定義より X 6∈X

X 6∈X と仮定すると、定義より X ∈X

−→ どちらにしても矛盾!!

(28)

ATM の判定不可能性

ATM を判定するTM U があったとする。

入力 hMi に対し、

MhMi を受理するなら拒否

MhMi を拒否するなら受理 となるTM D(U を使って)作れる。

これに、入力 hDi を喰わせよ。

—電子計算機概論I 18—

(29)

ATM の判定不可能性

ATM を判定するTM U があったとする。

入力 hMi に対し、

MhMi を受理するなら拒否

MhMi を拒否するなら受理 となるTM D(U を使って)作れる。

これに、入力 hDi を喰わせよ。

(30)

ATM の判定不可能性

ATM を判定するTM U があったとする。

入力 hMi に対し、

MhMi を受理するなら拒否

MhMi を拒否するなら受理 となるTM D(U を使って)作れる。

これに、入力 hDi を喰わせよ。

—電子計算機概論I 18—

(31)

さて、本講義最後の話題は、

計算量

について

問題の難しさを如何に計るか ?

(32)

さて、本講義最後の話題は、

計算量

について

問題の難しさを如何に計るか ?

—電子計算機概論I 19—

Referensi

Dokumen terkait

計算の理論 或る問題の「計算が可能」 m その計算を行なうプログラムが存在 ⇓ 計算機の機能 =「計算」のモデル を決めて議論 −→ 代表的な「計算のモデル」を幾つか紹介... 演習問題 ちょっとしたコツtips: 「後に続く文字列が何だったら受理か」 が全く同じ状態は一つの状態にまとめられる。 これが違う状態はまとめられない。

計算の理論 或る問題の「計算が可能」 m その計算を行なうプログラムが存在 ⇓ 計算機の機能 =「計算」のモデル を決めて議論 −→

計算の理論 或る問題の「計算が可能」 m その計算を行なうプログラムが存在 ⇓ 計算機の機能 =「計算」のモデル を決めて議論 −→

パスワードによる本人認証 • 暗号化関数でパスワードを変換して保管 • 入力したパスワードを暗号化関数で変換して、 保管してある文字列と照合 暗号化関数に要請される性質は? • 間違った文字列では変換結果が一致しない −→ 異なる入力には異なる値を返す(単射) • 保管してある文字列が露見しても 元のパスワードが判明しない −→ 一方向性関数

16–2 文字列 C言語には固有の「文字列型」は用意されておらず、文字型 char の配列として扱う。文字列の終わりを示 文字列 = 文字の配列 こう書くとそのまま当たり前。 す目印として null 文字 ’\0’が用いられ、配列の先頭から見ていって ’\0’までが一つの文字列として扱われ null 文字 ’\0’ は文字コード 0 の文字だ

「整数で答を見つけよ、という問題に決まっているじゃないか。分数で良 ければどんな新米だって、答が見つけられる1。せっかく計算が楽なように、 答が小さい数になるような問題を選んで送ったのに。」 だが、ウォリスが「ブラウンカーの方法を使ったのだが」と言って次によこ した答は、フェルマーが秘蔵していた答にぴったり合っていた。第1問の答は x= 1766319049,

「問題」とは それぞれの「問題」に対し、 定められた計算モデルで、 受理/拒否判定が可能(問題が解ける)か? 受理される文字列が 「文法に適っている」文字列だと思えば、 「問題」とは「文法(言語)」である 「文法に適っている」かどうかの判定 · · ·「構文解析syntactic analysis」... 演習問題 ちょっとしたコツtips:

GFDワークノート 誤差の定義と蓄積 1 実数の浮動小数点表現とその誤差の例 実際,我々は計算機を用いて関数fx, yを計算し,興味のある値zを獲得する.よっ て,∆cにはfx, yの計算の過程で生じた「計算誤差」が含まれている.. 今日,計算 機の性能が向上したからといって,この計算誤差が無視できるほどに小さくできる