タイプは、場合、底への対数があります。つまり、はPで指定された位置にあるX要素のコンテナと見なすことができます。確かに、Cを取得するためにXをどのパワーPに上げる必要があるかを尋ねる問題です。X P C ≅ P → X CCXPC≅P→XCXPPXC
対数が存在するときはいつでも、Fがファンクターであるを操作するのは理にかなっています。つまり、l o glogFF。なお、もし FlogX(FX)、その後、我々は確かに持っている FをFX≅logF→X、コンテナは私たちにその要素以外の何も面白い伝えないよう:対数を持たない形状を選択してコンテナを。F1≅1
位置セットの観点から考えると、おなじみの対数の法則が意味をなします
L O G(K1 )L O G私L O G(F× G )L O G(F⋅ G )====01L O GF+ l o gGL O GF× l o gG空のコンテナに位置がありません1つ、1つの位置のコンテナコンテナのペア、位置の選択コンテナのコンテナ、ポジションのペア
我々はまた、獲得ここで、 Z = l o gL O Gバツ(νY。T)= μ Z。L O GバツTバインダーの下で。つまり、一部のcodataの各要素へのパスは、対数を反復することにより帰納的に定義されます。例えば、Z= l o gバツY
L O GSt r e a m = l o gバツ(νY。バツ× Y)= μ Z。1 + Z= Nトン
導関数が1ホールコンテキストの型を示し、対数が位置を示すことを考えると、接続が必要です。
F1 ≅1⇒L O GF≅∂F1
形状の選択がない場合、位置は要素が消された1ホールコンテキストとまったく同じです。より一般的には、常に、 F形状の選択とその形状内の要素の位置を表します。∂F1F
ルーツについて言うことは少ないのではないかと心配していますが、同様の定義から始めて、自分の鼻をたどることができます。型の対数の使用法については、Ralf Hinzeの「Memo functions、polytypically!」を参照してください。走らなきゃ...