<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/tokyotaplreading/">
    <title>tokyotaplreading @ ウィキ</title>
    <link>http://w.atwiki.jp/tokyotaplreading/</link>
    <atom:link href="https://w.atwiki.jp/tokyotaplreading/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>tokyotaplreading @ ウィキ</description>

    <dc:language>ja</dc:language>
    <dc:date>2013-02-16T13:27:19+09:00</dc:date>
    <utime>1360988839</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/tokyotaplreading/pages/22.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/tokyotaplreading/pages/29.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/tokyotaplreading/pages/28.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/tokyotaplreading/pages/1.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/tokyotaplreading/pages/27.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/tokyotaplreading/pages/26.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/tokyotaplreading/pages/25.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/tokyotaplreading/pages/23.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/tokyotaplreading/pages/24.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/tokyotaplreading/pages/15.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/tokyotaplreading/pages/22.html">
    <title>TAPL 読書会@東京 第14回</title>
    <link>https://w.atwiki.jp/tokyotaplreading/pages/22.html</link>
    <description>
      **2012年4月12日開催

*第20章    </description>
    <dc:date>2013-02-16T13:27:19+09:00</dc:date>
    <utime>1360988839</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/tokyotaplreading/pages/29.html">
    <title>TAPL 読書会＠東京 第21回</title>
    <link>https://w.atwiki.jp/tokyotaplreading/pages/29.html</link>
    <description>
      3月第二土曜日は他のイベントと被っているため、この日には開催しません。
3月の他の日にするか4月(もしくはそれ以降)になるかは未定です。    </description>
    <dc:date>2013-02-16T13:25:36+09:00</dc:date>
    <utime>1360988736</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/tokyotaplreading/pages/28.html">
    <title>TAPL 読書会＠東京 第20回</title>
    <link>https://w.atwiki.jp/tokyotaplreading/pages/28.html</link>
    <description>
      2013年2月9日開催
22章
22.3あたりまで。

型変数の導入とか

11章、9章(5章、3章)あたりの復習をオススメ    </description>
    <dc:date>2013-02-16T13:23:10+09:00</dc:date>
    <utime>1360988590</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/tokyotaplreading/pages/1.html">
    <title>TAPL 読書会@東京</title>
    <link>https://w.atwiki.jp/tokyotaplreading/pages/1.html</link>
    <description>
      **TAPL読書会＠東京 Wikiへようこそ

**まとめページ
-TAPL読書会＠東京 第0回
-TAPL読書会＠東京 第1回
-TAPL読書会＠東京 第2回
-[[TAPL読書会＠東京 第3回 (2011年 月 日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/21.html]]
-TAPL読書会＠東京 第4回
-[[TAPL読書会＠東京 第5回 (2011年 月 日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/20.html]]
-TAPL読書会＠東京 第6回 (2011年5月7日開催)
-[[TAPL読書会＠東京 第6回 (2011年5月7日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/19.html]]
-TAPL読書会＠東京 第7回 (2011年7月9日開催)
-[[TAPL読書会＠東京 第7回 (2011年7月9日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/18.html]]
-[[TAPL読書会＠東京 第8回 (2011年9月10日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/17.html]]
-[[TAPL読書会＠東京 第9回 (2011年11月9日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/16.html]]
-TAPL読書会＠東京 第10回 (2011年12月11日開催)
-[[TAPL読書会＠東京 第11回 (2012年1月21日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/13.html]]
-[[TAPL読書会＠東京 第12回(2012年2月11日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/14.html]]
-[[TAPL読書会＠東京 第13回(2012年3月10日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/15.html]]
-[[TAPL読書会＠東京 第14回(2012年3月10日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/22.html]]
-[[TAPL読書会＠東京 第15回(2012年5月12日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/23.html]]
-[[TAPL読書会＠東京 第16回(2012年9月8日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/30.html]]
-[[TAPL読書会＠東京 第17回(2012年10月13日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/25.html]]
-[[TAPL読書会＠東京 第18回(2012年11月17日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/26.html]]
-[[TAPL読書会＠東京 第19回(2012年12月8日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/27.html]]
-[[TAPL読書会＠東京 第19回(2012年12月15日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/27.html]]
-[[TAPL読書会＠東京 第20回(2013年2月9日開催)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/28.html]]
-[[TAPL読書会＠東京 第21回(2012年3月開催予定)&gt;http://www4.atwiki.jp/tokyotaplreading/pages/29.html]]    </description>
    <dc:date>2013-02-16T13:19:13+09:00</dc:date>
    <utime>1360988353</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/tokyotaplreading/pages/27.html">
    <title>TAPL 読書会＠東京 第19回</title>
    <link>https://w.atwiki.jp/tokyotaplreading/pages/27.html</link>
    <description>
      2012年12月15日開催

21.9から21章最後まで    </description>
    <dc:date>2012-12-23T20:34:21+09:00</dc:date>
    <utime>1356262461</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/tokyotaplreading/pages/26.html">
    <title>TAPL 読書会＠東京 第18回</title>
    <link>https://w.atwiki.jp/tokyotaplreading/pages/26.html</link>
    <description>
      2012年11月17日開催

21.7あたりから
21.8 まで    </description>
    <dc:date>2012-12-23T20:32:24+09:00</dc:date>
    <utime>1356262344</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/tokyotaplreading/pages/25.html">
    <title>TAPL 読書会＠東京 第17回</title>
    <link>https://w.atwiki.jp/tokyotaplreading/pages/25.html</link>
    <description>
      2012/10/14
lift についてさらに
→ [[モナドって何なのよ&gt;http://dl.dropbox.com/u/7687891/join_to_Monad/join_to_Monad.html]]

21.5.1
問題文
lift

1+ という関数があったとする

 1+ 2 → 3
 1+ 1 → 2

この関数を「lift」して元の集合に対して扱えるようにする

 1+ [2 3] → [3 4]
 1+ [2 5 6] → [3 6 7]

greatest point of F
least fixed point

generating set for x

21.5.1
定義

G_x = {X⊆U | x ∈ F(X)}
関数が invertible

F が invertible で
partial function support_F ∈ U → P(U) が次のように定義されているとき


  support_F(x) = { X  if X ∈ G_x and ∀X&#039; ∈ G_x.X⊆X&#039;
                   ↑ if G_x = 空集合

その support function は次のように lift される

  support_F(X) = { Ux∈X support_F(x) if ∀x ∈ X.support_F(x) ↓
                   ↑                 otherwise
x → X


21.5.2


solution:
invertibility をチェックするには
S_f と S の定義を inspect すればよい
G(S,T) の each set が高々一つの (at most) 要素だけを持つこと


21.5.3
定義

support_F(x) が定義されているとき
element x は F-supported である
さもなければ F-unsupported である
F-supported な element は support_F(x) = 空集合
であるとき F-ground と呼ばれる

unsupported と F-ground の違いが良くわからない
  →　21章の頭。集合の話
      21.3
         three-element universe U = {a, b, c}
         E1(空集合) = {c}   ← ground


Figure 21-2
i は唯一の unuspported element
g は唯一の ground element
h が (ここでの定義に従えば)  supported element であることに注意

a given x に対して
set support_E(x) が arrow from x to y が存在する every y を contain する

21.5.5
定義

gfp(X) = if support(X)↑, then false            support(X) が undeined のとき false
         else if support(X)⊆X, then true       support(X) ⊆ X のとき true
         otherwise gfp(support(X) U X)


f(x)↑ or f(x) = ↑ mean &quot;f is undefined on x&quot;
f(x)↓ mean &quot;f is defined on x&quot;
2.1.9 definition

gfp を extend
indivisula elements by taking gfp(x) = gfp({x})

2.1.8 definition
partial function



21.5.6 Exercise [ ? ]

Another observation that can be made from Figure 21-2 is that an element x of vF is not a member
of μF if x participates in a cycle in the support graph (or if there is a path from x to an
element that participates in a cycle). Is the converse also true that is, if x is a member of vF
but not μF , is it necessarily the case that x leads to a cycle?

The remainder of the section is devoted to proving the correctness and termination of gfp .
(First-time readers may want to skip this material and jump to the next section.) We start by
observing a couple of properties of the support function.

21.5.7
lemma

 X ⊆ F ( Y ) iff support F ( X ) ↓ and support F ( X ) ⊆ Y .

support_F(X) が定義されていてかつ support_F(X) ⊆ Y のときにのみ
X ⊆ F(Y)

21.5.13
exercise

Suppose F is an invertible generating function.
Define the function lfp_F (or just lfp) as follows:

    lfp(X) = if   support(X)↑, then false
             else if X = O,     then true
             else lfp(support(X)).

Intuitively, lfp works by starting with a set X and using the support relation to reduce it
until it becomes empty. Prove that this algorithm is partially correct, in the sense that

    If lfp_F(X) = true,  then X ⊆ μF.

    If lfp_F(X) = false, then X ? μF.

Can you find a class of generating functions for which lfp_F is guaranteed to terminate on
all finite inputs? 

finite な入力全てに対して lfp_F のterminate が保証される
generating functions の class とは?


21.6 More Efficient Algorithms

gfp^s
gfp^t

メモを持ち回る感じ
一度みつかったものを何回も探しに行くことをしない    </description>
    <dc:date>2012-11-17T14:43:45+09:00</dc:date>
    <utime>1353131025</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/tokyotaplreading/pages/23.html">
    <title>TAPL 読書会＠東京 第15回</title>
    <link>https://w.atwiki.jp/tokyotaplreading/pages/23.html</link>
    <description>
      2012年9月8日開催

F が invertible であるとき partial function supportF ∈ U → P(U) は次のように定義される

 supportF(x) = { X  if X ∈ Gx and ∀X&#039; ∈ Gx. X ⊆ X&#039;
                 ↑ if Gx = 空集合


The support function is lifted to sets as follows

  supportF(x) = {U x ∈x supportF(x) if ∀x ∈ X. supportF(x)↓
                 ↑                  otherwise

*下向き矢印は何を意味しているの? → 定義域 defined
parial function は数学的には×



21.5.2
Exercise:
Verify that Sf and S,
the genrating functions for the subtyping relations from Definitions 21.3.1 and 21.3.2,
are invertible, and give their support functions

Our goal is to develop algorithms for checking membership
in the least ad greatest fixed points of a generatong function F.
The basic steps in these algorithms will involve &quot;running F backwards&quot;:
to check membership for an element x,
we need to ask how x cound have been generated by F.
the advantage of an invertbile F is that there is at most one way to generated by F.
For a non-invertible F, elements can be generated in multiple ways,
leading to a combinatorial explosion in the number of paths that the algorithm must explore.
From now on, we restrict our attention to invertible generating functions.

メンバーシップを調べる関数を定義


*調べる
supoort function とは?


解答
p539

21.5.3
definition:
An element x is F-supported if supportF(x)↓;
otherwise, x is F-unsupported.
An F-supported element is called F-ground if supportF(x) = 空集合    </description>
    <dc:date>2012-11-17T14:36:04+09:00</dc:date>
    <utime>1353130564</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/tokyotaplreading/pages/24.html">
    <title>TAPL 読書会＠東京 第16回</title>
    <link>https://w.atwiki.jp/tokyotaplreading/pages/24.html</link>
    <description>
      2012年9月8日開催

21.5 Membership Checking


some universe U に関する generating function F と
element x ∈ U
が与えられたときに
x falls in the greatest fixed point of F
かどうかをどのように判定するか    </description>
    <dc:date>2012-11-17T14:24:50+09:00</dc:date>
    <utime>1353129890</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/tokyotaplreading/pages/15.html">
    <title>TAPL 読書会@東京 第13回</title>
    <link>https://w.atwiki.jp/tokyotaplreading/pages/15.html</link>
    <description>
      qx2012年3月10日開催

***第18章

後で埋める

***第19章
ちょっとやった
Fetherweight Java
演習問題はやってない    </description>
    <dc:date>2012-03-31T23:41:32+09:00</dc:date>
    <utime>1333204892</utime>
  </item>
  </rdf:RDF>
