From 4fecdbbdafb8782fd347878b4b494ba6778b10a2 Mon Sep 17 00:00:00 2001 From: "Tomoya Matsuura(MacBookPro)" Date: Fri, 8 Sep 2023 23:47:43 +0900 Subject: [PATCH] [obsidian] vault backup: 2023-09-08 23:47:43[ --- content/mimium新内部表現の構想.md | 36 +++++++++++++++++++++++++++---- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/content/mimium新内部表現の構想.md b/content/mimium新内部表現の構想.md index 943af584..aad2183e 100644 --- a/content/mimium新内部表現の構想.md +++ b/content/mimium新内部表現の構想.md @@ -21,7 +21,7 @@ n以下の自然数$I_n$ (ディレイのbounded access用) $$ \begin{align} \tau ::=&\quad R_a \quad & a \in \mathbb{N}\\ - |&\quad I_n \quad &n \in \mathbb{N} \\ + |&\quad I_n \quad &n \in \mathbb{N} \\\ |&\quad \tau → \tau \quad &a,b \in \mathbb{N}\\ % |&\quad \langle \tau \rangle \end{align} @@ -37,13 +37,12 @@ $$ $$ \begin{align} v \; ::= & \quad R \\ - | & \quad \lambda x:T.e \quad & [lambda]\\ + | & \quad \lambda x:\tau.e \quad & [lambda]\\ |& \quad feed \; x.e \quad & [feed] \\ \end{align} $$ ## 項 -項 $$ \begin{align} @@ -198,4 +197,33 @@ feedの項に対する加算とか乗算の計算は簡約がしづらいなあ } ``` -やっぱdenotationalの方が定義しやすいかもなあ \ No newline at end of file +やっぱdenotationalの方が定義しやすいかもなあ + +ああでもfeedを無事に展開できるということは、feedの項に対して`Cell`を割り当てることそのものには間違いはないのか + +ただ、例えばFeedの項の中に関数が残っちゃうような可能性もあるため、Feedのhistoryの中にLambdaの項が保存されるような状況が回避できない。 + +型付規則の中でfeed x.eのeがプリミティブしか取れないようにすればいいのかね。そうするとValueはCopyトレイトを実装できて、feedの中に実際にはラムダが入ってたとしても、簡約後は必ずValueになっていると + +## 型(改正版) + +というわけで型の定義再訪 + + +$$ +\begin{align} +\tau_p ::=&\quad R_a \quad & a \in \mathbb{N}\\ + |&\quad I_n \quad &n \in \mathbb{N} \\ +\tau :: = &\quad \tau_p\\ + |&\quad \tau → \tau \quad &a,b \in \mathbb{N}\\ + % |&\quad \langle \tau \rangle +\end{align} +$$ + +でFeedの型付け規則(xが)こういう感じになると + +$$ +\frac{\Gamma, x:\tau^a \vdash e:\tau^b}{\Gamma \vdash \lambda x.e:\tau^a \to \tau^b }\\ + +\frac{\Gamma, x : \tau_p^a \vdash e: \tau_p^a }{\Gamma \vdash feed\ x.e:\tau_p^a} +$$