リポジトリ / emssr / independent_common_compiler
r2
| r2 emssr | 1 | # 領域と鎖の層 |
| r2 emssr | 2 | |
| r2 emssr | 3 | [← 総表](Index.md) |
| r2 emssr | 4 | |
| r2 emssr | 5 | Level 0 の原始概念は六つになる(幾何 Index)。 |
| r2 emssr | 6 | |
| r2 emssr | 7 | > 領域・内側/外側・重なり・含まれる・隣接・道 |
| r2 emssr | 8 | |
| r2 emssr | 9 | 操作は四つで尽きる。 |
| r2 emssr | 10 | |
| r2 emssr | 11 | | 操作 | 何をするか | |
| r2 emssr | 12 | |---|---| |
| r2 emssr | 13 | | 共通部 | 二つの領域が重なっている部分を取り出す | |
| r2 emssr | 14 | | 合わせ | 二つの領域を一つにまとめた最小の領域を作る | |
| r2 emssr | 15 | | 外側 | ある閉じた領域の外にある領域を取る | |
| r2 emssr | 16 | | 境界 $\partial$ | 内側と外側を分ける面を取り出す | |
| r2 emssr | 17 | |
| r2 emssr | 18 | 関係はこの四つの上の述語になる。 |
| r2 emssr | 19 | |
| r2 emssr | 20 | $$ |
| r2 emssr | 21 | \begin{aligned} |
| r2 emssr | 22 | \text{重なり}(A,B)&\iff A\cap B\neq\varnothing\\ |
| r2 emssr | 23 | \text{含まれる}(A,B)&\iff B\setminus A=\varnothing\\ |
| r2 emssr | 24 | \text{隣接}(A,B)&\iff A\cap B=\varnothing\ \wedge\ \bigl((2A\cap B)\cup(A\cap2B)\bigr)\neq\varnothing\\ |
| r2 emssr | 25 | \text{道}(A)&\iff A\neq\varnothing\ \wedge\ \text{立っている cell が一続き} |
| r2 emssr | 26 | \end{aligned} |
| r2 emssr | 27 | $$ |
| r2 emssr | 28 | |
| r2 emssr | 29 | --- |
| r2 emssr | 30 | |
| r2 emssr | 31 | ## 単位領域はノードから立つ |
| r2 emssr | 32 | |
| r2 emssr | 33 | ### `kukeke` — 領域 $N\to G$ |
| r2 emssr | 34 | |
| r2 emssr | 35 | 構成語は $D_\infty=\langle i,j\mid i^2=j^2=e\rangle$ の元であり、$(m,\varepsilon)$ の対で尽きる。 |
| r2 emssr | 36 | |
| r2 emssr | 37 | $$ |
| r2 emssr | 38 | \operatorname{cell}(w)=2\cdot\operatorname{zz}(m)+\varepsilon, |
| r2 emssr | 39 | \qquad |
| r2 emssr | 40 | \operatorname{zz}(m)= |
| r2 emssr | 41 | \begin{cases} |
| r2 emssr | 42 | 2m & m\ge0\\ |
| r2 emssr | 43 | -2m-1 & m<0 |
| r2 emssr | 44 | \end{cases} |
| r2 emssr | 45 | $$ |
| r2 emssr | 46 | |
| r2 emssr | 47 | $\operatorname{zz}$ は単射なので $\operatorname{cell}$ も単射になる。別のノードが同じ単位領域を指すことは無く、 |
| r2 emssr | 48 | 共通部と合わせが目印の重なりを正しく写す。 |
| r2 emssr | 49 | |
| r2 emssr | 50 | | ノード | 平文 | $(m,\varepsilon)$ | cell | |
| r2 emssr | 51 | |---|---|---|---:| |
| r2 emssr | 52 | | $O$ | `ma` | $(0,0)$ | 0 | |
| r2 emssr | 53 | | $i$ | `ma ka zu` | $(0,1)$ | 1 | |
| r2 emssr | 54 | | $ij$ | `ma ka zu ka ze` | $(-1,0)$ | 2 | |
| r2 emssr | 55 | | $ji$ | `ma ka ze ka zu` | $(1,0)$ | 4 | |
| r2 emssr | 56 | | $j$ | `ma ka ze` | $(1,1)$ | 5 | |
| r2 emssr | 57 | |
| r2 emssr | 58 | cell は 31 個までになる。commonc が領域を一語の mask で持つためで、 |
| r2 emssr | 59 | $O$ から 15 歩までの構成語がこの網に収まる。 |
| r2 emssr | 60 | |
| r2 emssr | 61 | ``` |
| r2 emssr | 62 | ma ka |
| r2 emssr | 63 | kukeke ka |
| r2 emssr | 64 | ``` |
| r2 emssr | 65 | |
| r2 emssr | 66 | 出力は cell の数 $1$ と cell 番号 $0$ になる。`examples/region/01_cell.cmn` |
| r2 emssr | 67 | |
| r2 emssr | 68 | --- |
| r2 emssr | 69 | |
| r2 emssr | 70 | ## 四操作 |
| r2 emssr | 71 | |
| r2 emssr | 72 | | 音節 | 操作 | 型 | 例 | |
| r2 emssr | 73 | |---|---|---|---| |
| r2 emssr | 74 | | `kukeko` | 共通部 | $G\otimes G\to G$ | `examples/region/02_meet.cmn` | |
| r2 emssr | 75 | | `kukesa` | 合わせ | $G\otimes G\to G$ | `03_join.cmn` | |
| r2 emssr | 76 | | `kukesi` | 外側 | $G\otimes G\to G$ | `04_outside.cmn` | |
| r2 emssr | 77 | | `kukesu` | 境界 $\partial$ | $G\to C$ | `11_boundary.cmn` | |
| r2 emssr | 78 | |
| r2 emssr | 79 | 外側は第一引数を宇宙、第二引数を抜く側に取る。 |
| r2 emssr | 80 | |
| r2 emssr | 81 | $$ |
| r2 emssr | 82 | \text{外側}(U,A)=U\setminus A |
| r2 emssr | 83 | $$ |
| r2 emssr | 84 | |
| r2 emssr | 85 | ``` |
| r2 emssr | 86 | ma ma ma ka |
| r2 emssr | 87 | ki zu ki ka |
| r2 emssr | 88 | kukeke kukeke kukeke ka |
| r2 emssr | 89 | kukesa ki ka |
| r2 emssr | 90 | kukesi ka |
| r2 emssr | 91 | ``` |
| r2 emssr | 92 | |
| r2 emssr | 93 | $\{O,i\}\setminus\{O\}=\{i\}$。出力は $1$ と $1$ になる。 |
| r2 emssr | 94 | |
| r2 emssr | 95 | --- |
| r2 emssr | 96 | |
| r2 emssr | 97 | ## 関係 |
| r2 emssr | 98 | |
| r2 emssr | 99 | | 音節 | 関係 | 型 | |
| r2 emssr | 100 | |---|---|---| |
| r2 emssr | 101 | | `kukese` | 含まれる | $G\otimes G\to B$ | |
| r2 emssr | 102 | | `kukeso` | 重なり | $G\otimes G\to B$ | |
| r2 emssr | 103 | | `kuketa` | 隣接 | $G\otimes G\to B$ | |
| r2 emssr | 104 | | `kuketi` | 道 | $G\to B$ | |
| r2 emssr | 105 | |
| r2 emssr | 106 | 値は compile 時に決まり、$\mathrm{Cst}$ 一箱で開いて実行時のワイヤになる。 |
| r2 emssr | 107 | だから $\pi$(`mo`)を通せば算術へ流せる。 |
| r2 emssr | 108 | |
| r2 emssr | 109 | ``` |
| r2 emssr | 110 | ma ma ka |
| r2 emssr | 111 | ki zu ka |
| r2 emssr | 112 | kukeke kukeke ka |
| r2 emssr | 113 | kuketa ka |
| r2 emssr | 114 | ``` |
| r2 emssr | 115 | |
| r2 emssr | 116 | $O$ の単位領域と $i$ の単位領域は cell 0 と 1 になり、隣り合う。値は $1$。 |
| r2 emssr | 117 | `examples/region/07_adjacent.cmn` |
| r2 emssr | 118 | |
| r2 emssr | 119 | $j$ へ替えると cell は 0 と 5 になり、値は $0$ になる。`08_apart.cmn` |
| r2 emssr | 120 | |
| r2 emssr | 121 | 走査も隣接リストも本文に現れない([language/03_intent](../language/03_intent.md) §6)。 |
| r2 emssr | 122 | |
| r2 emssr | 123 | --- |
| r2 emssr | 124 | |
| r2 emssr | 125 | ## 鎖 |
| r2 emssr | 126 | |
| r2 emssr | 127 | $n$-単体の境界は符号つきの和になる(影響関数 証明3.2)。 |
| r2 emssr | 128 | |
| r2 emssr | 129 | $$ |
| r2 emssr | 130 | \partial\sigma_n=\sum_{k=0}^{n}(-1)^k[v_0,\ldots,\hat v_k,\ldots,v_n] |
| r2 emssr | 131 | $$ |
| r2 emssr | 132 | |
| r2 emssr | 133 | 係数は $\{-1,0,1\}$ に限られる。$\sigma_{n-1}$ が $\sigma_n$ の境界に符号つきで入るか、 |
| r2 emssr | 134 | 入らないかの三択しかないためになる。 |
| r2 emssr | 135 | |
| r2 emssr | 136 | 領域の境界は cell の両端に立つ。 |
| r2 emssr | 137 | |
| r2 emssr | 138 | $$ |
| r2 emssr | 139 | \partial A\ \text{の係数}(v)=[\,v-1\in A\,]-[\,v\in A\,], |
| r2 emssr | 140 | \qquad |
| r2 emssr | 141 | \text{正側}=2A\setminus A, |
| r2 emssr | 142 | \quad |
| r2 emssr | 143 | \text{負側}=A\setminus2A |
| r2 emssr | 144 | $$ |
| r2 emssr | 145 | |
| r2 emssr | 146 | $2A$ は mask の倍であり、左シフトが乗算そのものなので箱を作らずに済む。 |
| r2 emssr | 147 | |
| r2 emssr | 148 | | 音節 | 記号 | 型 | |
| r2 emssr | 149 | |---|---|---| |
| r2 emssr | 150 | | `bi` | $\partial$ | $C\to C$ | |
| r2 emssr | 151 | | `bu` | $\oplus$ | $C\otimes C\to C$ | |
| r2 emssr | 152 | |
| r2 emssr | 153 | ### 閉じた曲面に境界は無い |
| r2 emssr | 154 | |
| r2 emssr | 155 | ``` |
| r2 emssr | 156 | ma ka |
| r2 emssr | 157 | kukeke ka |
| r2 emssr | 158 | kukesu ka |
| r2 emssr | 159 | bi ka |
| r2 emssr | 160 | ``` |
| r2 emssr | 161 | |
| r2 emssr | 162 | 出力は $0$、つまり項の無い鎖になる。 |
| r2 emssr | 163 | |
| r2 emssr | 164 | $$ |
| r2 emssr | 165 | \partial(\partial G)=\varnothing |
| r2 emssr | 166 | $$ |
| r2 emssr | 167 | |
| r2 emssr | 168 | $\mathbb R^3$ の閉じた曲面は内側と外側を分ける面であり、その面には境界が無い。 |
| r2 emssr | 169 | 冪零性は代数の要請ではなく、この幾何的事実の係数表現になる。 |
| r2 emssr | 170 | `examples/region/12_nilpotent.cmn` |
| r2 emssr | 171 | |
| r2 emssr | 172 | ### 鎖の加算 |
| r2 emssr | 173 | |
| r2 emssr | 174 | $|$係数$|$ が $2$ になる和は鎖でなくなるので、両方の compiler が失敗を報告する。 |
| r2 emssr | 175 | |
| r2 emssr | 176 | ``` |
| r2 emssr | 177 | ma ma ka |
| r2 emssr | 178 | ki ze ka |
| r2 emssr | 179 | kukeke kukeke ka |
| r2 emssr | 180 | kukesu kukesu ka |
| r2 emssr | 181 | bu ka |
| r2 emssr | 182 | ``` |
| r2 emssr | 183 | |
| r2 emssr | 184 | $\partial\{O\}\oplus\partial\{j\}$ は頂点 $0,1,5,6$ に $\mp1$ を立てる。出力の先頭は $4$ になる。 |
| r2 emssr | 185 | `examples/region/13_chainsum.cmn` |
| r2 emssr | 186 | |
| r2 emssr | 187 | 同じ領域を二度足すと係数が $2$ になり、image が出ない。`16_chain_two.cmn` |
| r2 emssr | 188 | |
| r2 emssr | 189 | --- |
| r2 emssr | 190 | |
| r2 emssr | 191 | ## 出口の語 |
| r2 emssr | 192 | |
| r2 emssr | 193 | | 型 | 開く語 | |
| r2 emssr | 194 | |---|---| |
| r2 emssr | 195 | | $\mathsf{Region}$ | cell の数、cell 番号(昇順) | |
| r2 emssr | 196 | | $\mathsf{Chain}$ | 頂点の数、各頂点の(係数、頂点数 $1$、頂点番号) | |
| r2 emssr | 197 | |
| r2 emssr | 198 | ``` |
| r2 emssr | 199 | ma ka / kukeke ka / kukesu ka → 2 −1 1 0 1 1 1 |
| r2 emssr | 200 | ``` |
| r2 emssr | 201 | |
| r2 emssr | 202 | $\partial\{O\}$ は頂点 $0$ に $-1$、頂点 $1$ に $+1$ を立てる。 |
| r2 emssr | 203 | |
| r2 emssr | 204 | ## 参照 |
| r2 emssr | 205 | |
| r2 emssr | 206 | - [noun](noun.md) 名詞ノード。cell 番号の出どころ |
| r2 emssr | 207 | - [language/03_intent](../language/03_intent.md) 走査を書かずに済む問い |