練習問題 4.4.2
逆の等式unzip . zipp = idは成り立つか.
xsys = ([],y:ys)
と仮定する.
(unzip . zipp) xsys
= { (.),xsys の定義 }
unzip (zipp ([],y:ys))
= { zipp の定義 }
unzip (uncurry zip ([],y:ys))
= { uncurry の定義 }
unzip (zip [] (y:ys))
= { zip の定義 }
unzip []
= { unzip の定義 }
pair (map fst, map snd) []
= { pair の定義 }
(map fst [], map snd [])
= { map の定義 }
([],[])
明らかに
([],[]) ≠ ([],y:ys) = xysであるから,
unzip . zipp = idは成り立たない.