2021 Q1
「根」をなくすことでどうなるか?
T = ε | T ^ T
S = ε | T - T
(A ^ B) - C = A - (B ^ C) = (B ^ C) - A = B - (C ^ A) = (C ^ A) - B = C - (A ^ B)
則 1: (A ^ B) - C = A - (B ^ C)
則 2: (A ^ B) - C = C - (A ^ B)
分岐点を「節」とする
すべての「節」について、次数が 1 または 3 である
「節」の高さを求めるアルゴリズム
q = Queue
q << すべての「葉」
while let n = q.shift()
case n
Leaf =>
n の高さ = 0
q.push(n の親)
_ =>
if n とつながる 3 つの「節」のうち、2 つ以上の高さが確定している
n の高さ = (2 番目に小さい高さ) + 1
if 高さが確定していないものが存在
q.push(それ)
else
q.push(n)
これによって最も高い「節」が 1 つか 2 つ定まる
木の直径が偶数なら 1 つで、奇数なら 2 つ
自然数表記が最も小さくなる箇所の選び方
bipuuk の性質より h(t_1) < h(t_2) ⇒ n(t_1) < n(t_2) ⇒ h(t_1) ≦ h(t_2)
最も高い「節」が 1 つのとき
その「節」から生える 3 つの「枝」のうち 1 つ × 左右で全 6 通り
2 つのとき
2 つをつなぐ「枝」 × 左右で全 2 通り
構文的曖昧性について
最も高い「節」が 1 つでその高さが 4 以下のとき曖昧
h(t) ≦ 3 なる t を「根」に 2 連続で付けることはできない
語
語 = 語幹 + 接辞
だけにして、これ以外の形はなくていい気がする
関係節の曖昧性
ある結合部分について、左と右を入れ替えて別の意味にならない(そのまま意味が変わらないか、シンタックスエラーになる)ような設計がいいよね
修飾語と被修飾語それぞれにマーカーをつける
二重に修飾されたときは?
定式化1
各単語には有限種類のマーカーがひとつ
ふたつの単語を順不同で結合
修飾関係は入次数 0~n 出次数 0~1 の有向グラフをなす
定式化2
N 人でトーナメント戦を行う
配置は既に決まっている
最初に各人にステータスを与えることで、その後の勝ち負けを決定できるか?
修飾語のみで行けそう
案1: 左修飾、右修飾、両修飾
案2: 左修飾、右修飾、遠い方を優先
案3: 順修飾、逆修飾
描画
円表記をいい感じに均等にしたい
力学モデル?
content clauses
nu と ka を分けるかどうか?
Toaq だと λx があるものを特別視して ka にしている
まあどっちも su'u だよね su'u ってなに?
述語に付随する格のようなものにしようと思っているので区別の必要は無い気がする
構文
案1
私-主題 知る-述語 食べる-内容節 あなた-主格 りんご-対格
案2
私-主題 望む-述語 x-ラムダ 食べる-内容節 (x-主格) りんご-対格
案3
私-主題 望む-述語 x-ラムダ 食べる-述語 (x-主格) りんご-対格
全体は項である必要がある
内側の x は省略できたほうが良い
x に意味はあるかないか
ただの束縛変数ではあるが、意味を付与できたらいいかも
「意味のある語にする」「x, y などの字語にする」「無意味語(作る)にする」を選択できる
項を修飾できたら面白い?
何に使うのか
ということは前置修飾?
relative clauses
Dyck 記法と Polish 記法の共存
/ a \ b
/ a b
スライムさんが使ってるやつっぽい
` a b
Unlambda 由来