続きの記事2つあり。
内容:
記法と設定と法則
を ΦX,A,Y に、
を □ に変える以外は元記事と同じ記号を使う。idA などは、バンプアップ記号'^'を使って A^ などと書く。
- f:X□A→Y
- v:X'→X
- p:A'→A
- q:Y→Y'
タイトニング
- ΦX',A,Y( (v□A^);f ) = v;ΦX,A,Y(f) : X'→hom(A, Y)

カーブに沿ったスライディング
- ΦX,A',Y( (X^□p);f ) = ΦX,A,Y(f);hom(p, Y) : X→hom(A', Y)

真っすぐなスライディング
- ΦX,A,Y'( f;q ) = ΦX,A,Y(f);hom(A, q) : X→hom(A,Y')

定義の確認
過去記事より、定義を引用する。
カリー化 Φ
Φ:Hom(A□B, C)→Hom(A, hom(B, C)) := λf∈Hom(A□B, C).(
[
λ0a∈A.(
[
λ0b∈B.( f(a, b) ∈C)
ALSO
λ1b→b'∈B.( f(a, b→b') ∈C)
] ∈Hom(B, C)
)
ALSO
λ1a→a'∈A.(
[
λ01b∈B.( f(a→a', b) ∈C)
] ∈Defm(B, C))
] ∈Hom(A, hom(B, C))
)
射のボックス積 f□g
f□g:A□C→B□D := [ λ0(a, c)∈A□C.( (f(a), g(c)) ∈B□D) ALSO λ1(a→a', c)∈A□C.( (f(a→a'), g(c)) ∈B□D) OR λ1(a, c→c')∈A□C.( (f(a), g(c→c')) ∈B□D) ]
hom(p, Y), hom(A, q)
hom(p:A'→A, Y):hom(A, Y)→hom(A', Y) := [ λ0u∈hom(A, Y).( p;u ∈Hom(A, Y) ) ALSO λ1u⇒v∈hom(A, Y).( p;;(u⇒v) ∈Defm(A, Y) ) ] hom(A, q:Y→Y'):hom(A, Y)→hom(A, Y') := [ λ0u∈hom(A, Y).( u;q ∈Hom(A, Y) ) ALSO λ1u⇒v∈hom(A, Y).( (u⇒v);;q ∈Defm(A, Y) ) ]
計算
タイトニング
- ΦX',A,Y( (v□A^);f ) = v;ΦX,A,Y(f) : X'→hom(A, Y)
左辺 =
ΦX',A,Y( (v□A^);f :X'□A→Y) : X'→hom(A, Y) =
[
λ0x'∈X'.(
[
λ0a∈A.( ( (v□A^);f)(x', a) ∈Y)
ALSO
λ1a→a'∈A.( ( (v□A^);f)(x', a→a') ∈Y)
] ∈Hom(A, Y)
)
ALSO
λ1x'→x''∈X'.(
[
λ01a∈A.( ( (v□A^);f)(x'→x'', a) ∈Y)
] ∈Defm(A, Y))
] : X'→hom(A, Y)
=
[
λ0x'∈X'.(
[
λ0a∈A.( f(v(x'), a) ∈Y)
ALSO
λ1a→a'∈A.( f(v(x'), a→a') ∈Y)
] ∈Hom(A, Y)
)
ALSO
λ1x'→x''∈X'.(
[
λ01a∈A.( f(v(x'→x''), a) ∈Y)
] ∈Defm(A, Y))
] : X'→hom(A, Y)
右辺 = v;ΦX,A,Y(f:X□A→Y) :X'→hom(A, Y) を計算するにあたって、ΦX,A,Y(f:X□A→Y) = Φ(f) = F :X→hom(A, Y) と置く。すると、
- 右辺 = v;F :X'→hom(A, Y)
後半の(α, β, ... とは違う)ギリシャ文字小文字をブロック変数として使う。ブロック変数は説明してないが見当は付くだろう。
v;F = v;(λξ∈X.F(ξ)) = λξ'∈X'./( F(ξ) / ξ = v(ξ') )/
これに対して、次の定義を使う。
F =
[
λ0x∈X.(
[
λ0a∈A.( f(x, a) ∈Y)
ALSO
λ1a→a'∈A.( f(x, a→a') ∈Y)
] ∈Hom(A, Y)
)
ALSO
λ1t→t'∈X.( /* 都合により変数名は t */
[
λ01a∈A.( f(t→t', a) ∈Y)
] ∈Defm(A, Y))
] : X→hom(A, Y)
右辺
= v;F
= v;(λξ∈X.F(ξ))
= λξ'∈X'./(
F(ξ)
/
ξ = v(ξ')
)/
=
λ{x' ALSO x'→x''}∈X'./(
[
λ0x∈X.(
[
λ0a∈A.( f(x, a) ∈Y)
ALSO
λ1a→a'∈A.( f(x, a→a') ∈Y)
] ∈Hom(A, Y)
)
ALSO
λ1t→t'∈X.( /* 都合により変数名は t */
[
λ01a∈A.( f(t→t', a) ∈Y)
] ∈Defm(A, Y))
]
/
{x ALSO t→t'} = v({x' ALSO x'→x''})
)/
=
λ{x' ALSO x'→x''}∈X'.(
{
[
λ0a∈A.( f(v(x'), a) ∈Y)
ALSO
λ1a→a'∈A.( f(v(x'), a→a') ∈Y)
] ∈Hom(A, Y)
ALSO
[
λ01a∈A.( f(v(x'→x''), a) ∈Y)
] ∈Defm(A, Y)
}
)
=
[
λ0x'∈X'.(
[
λ0a∈A.( f(v(x'), a) ∈Y)
ALSO
λ1a→a'∈A.( f(v(x'), a→a') ∈Y)
] ∈Hom(A, Y)
)
ALSO
λ1x'→x''∈X'.(
[
λ01a∈A.( f(v(x'→x''), a) ∈Y)
] ∈Defm(A, Y))
] :X'→hom(A, Y)
念のため、最後の式をコピーして比較。
左辺 =
[
λ0x'∈X'.(
[
λ0a∈A.( f(v(x'), a) ∈Y)
ALSO
λ1a→a'∈A.( f(v(x'), a→a') ∈Y)
] ∈Hom(A, Y)
)
ALSO
λ1x'→x''∈X'.(
[
λ01a∈A.( f(v(x'→x''), a) ∈Y)
] ∈Defm(A, Y))
] : X'→hom(A, Y)
右辺 =
[
λ0x'∈X'.(
[
λ0a∈A.( f(v(x'), a) ∈Y)
ALSO
λ1a→a'∈A.( f(v(x'), a→a') ∈Y)
] ∈Hom(A, Y)
)
ALSO
λ1x'→x''∈X'.(
[
λ01a∈A.( f(v(x'→x''), a) ∈Y)
] ∈Defm(A, Y))
] :X'→hom(A, Y)
続きは別記事。