Theorem Proving For All: Equational Reasoning In Liquid Haskell (Functional Pearl)

ACM SIGPLAN Notices(2018)

引用 15|浏览31
暂无评分
摘要
Equational reasoning is one of the key features of pure functional languages such as Haskell. To date, however, such reasoning always took place externally to Haskell, either manually on paper, or mechanised in a theorem prover. This article shows how equational reasoning can be performed directly and seamlessly within Haskell itself, and be checked using Liquid Haskell. In particular, language learners - to whom external theorem provers are out of reach - can benefit from having their proofs mechanically checked. Concretely, we show how the equational proofs and derivations from Hutton's textbook can be recast as proofs in Haskell (spoiler: they look essentially the same).
更多
查看译文
关键词
Liquid Haskell,theorem proving,Haskell,equational reasoning,program optimization
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要