Generalising and dualising the third list-homomorphism theorem: Functional pearl

Shin Cheng Mu, Akimasa Morihata

研究成果: Article査読

抄録

The third list-homomorphism theorem says that a function is a list homomorphism if it can be described as an instance of both a foldr and a foldl . We prove a dual theorem for unfolds and generalise both theorems to trees: if a function generating a list can be described both as an unfoldr and an unfoldl , the list can be generated from the middle, and a function that processes or builds a tree both upwards and downwards may independently process/build a subtree and its one-hole context. The point-free, relational formalism helps to reveal the beautiful symmetry hidden in the theorem.

本文言語English
ページ(範囲)385-391
ページ数7
ジャーナルACM SIGPLAN Notices
46
9
DOI
出版ステータスPublished - 2011 9 1

ASJC Scopus subject areas

  • Computer Science(all)

引用スタイル