Twitterでふぁぼったものをひたすら試します

TaPLの2章と3章に出てくる単語を調べた(だけ)

qiita.com

Q なんでこんなまとめブログみたいなことしてるの
A すうがくむずかしすぎて2章と3章を読んだことがなかったから

2章

2.1

  • "加算"

http://www.math.is.tohoku.ac.jp/~obata/student/subject/file/2018-7_kasan.pdf

集合Aから集合Bへの全単射が存在するとき, AとBは濃度が等しいといい
(略)
自然数の集合\mathbb{N} = \{1, 2, 3, \ldots \}と濃度が等しい集合A可算集合という. 言い換えれば, 全単射f: \mathbb{N} \rightarrow Aが存在するような集合A可算集合である.

https://www.hongo.wide.ad.jp/~jo2lxq/dm/lecture/02.pdf

  • Aを整数の集合とする
  • x \in Aから、x + 1というAの要素への関係をRとする
  • この場合 R = \{(x, x+1) | x \in A\} \subset A \times Aであり、RA上の関係である、という。
  • "保存される"

これよくわかんなかったんだけど。。

2.2

用語

日本語 英語
 対称的 symmetric sRtならばtRs
反対称的 antisymmetric sRtかつtRsならばs=t
 反射的 reflexive sRs
 推移的 transitive sRtかつtRuならばsRu

↑を組み合わせたやつ

前順序 半順序
 対称的    
反対称的  
 反射的
 推移的

3章

3.4

  • 操作的意味論

http://www.kurims.kyoto-u.ac.jp/~kenkyubu/kokai-koza/H28-hasegawa.pdf

実際にプログラミング言語の処理系が行っているような具体的な計算の規則によってプログラムの意味を与える流儀は、操作的意味論(operational semantics)と呼ばれます。操作的意味論が与えられると、コンピュータ上で動作するプログラミング言語の処理系を与えることが(少なくとも原理的には)できるので、現在では、操作的意味論は、プログラミング言語の定義を与える有力な手法とみなされています。

http://research.nii.ac.jp/~ichiro/lecture/model2003/operational%20semantics.pdf

抽象機械の例

  • 表示的意味論

https://ipsj.ixsq.nii.ac.jp/ej/index.php?action=pages_view_main&active_action=repository_action_common_download&item_id=65197&item_no=1&attribute_id=1&file_no=1&page_id=13&block_id=8

意味領域は,「定義されていること(definedness)」の度合いを表す順序\sqsubseteqが与えられた集合である.

  • 公理的意味論

https://www.fos.kuis.kyoto-u.ac.jp/~igarashi/class/sf03w/resume5.pdf

操作的/表示的意味論を使ってプログラムの性質の議論をするためには,数学的に定義された実行関係・意味関数などを対象として,メタ言語 (日本語+集合の基礎知識) によって非形式的に議論を行なわなければならなかった.ここでは,プログラムの性質を直接の対象として扱う形式的体系 (規則による導出体系) を考える.そして,形式的体系により証明できる性質を以て,プログラムの意味を定義した,と考える,このようなプログラムへの意味付けの方法を公理的意味論と呼ぶ.

感想

4章から先の単語はプログラミング言語の話題で出てくるから初見感はない(正直まだよくわかってない)