to mock a mockingbirdを読む(22)11章

Problem 31 The Bird C*

C*はCardinal once removedと読む。
これは次の条件を満たす。

1
C*xyzw = x y w z

C*はCに似ているが、xをスキップするまでアクションが遅延する点で異なる。
C*をBとCを用いて表せ。

1
2
3
4
C* x y z w = x y w z
C (x y) z w = x y w z
B C x y z w = x y w z
よってC* = B Cである

Problem 32 The Bird R*

R*(Robin once removed)は以下の条件を満たす。

1
R* x y z w = x z w y

R*がBとCから導出できることを示せ
(つまりはBとTから導出できる)

1
2
3
4
R* x y z w = x z w y
C* x z y w = x z w y
C* C* x y z w = x z w y
よってR* = C* C*である

Problem 33 The Bird F*

F*(Finch once removed)は以下の条件を満たす。

1
F* x y z w = x w z y

F*をBとCから導出せよ

1
2
3
4
5
F* x y z w = x w z y
R* x y w z = x w z y
C* (R* x) y z w = x w z y
B C* R* x y z w = x w z y
よってF* = B C* R*である

Problem 34 The Bird V*

V*(Vireo once removed)は以下の条件を満たす。

1
V* x y z w = x w y z

本ではV* x y z w = x w z yとなっているが上記の間違いだと思われる。
なぜならこれだとV/はF/とまったく同じになってしまうから。

V* x y z w = x w y z
F* x z y w = x w y z
C* F* x y z w = x w y z
よってV* = C* F*である。