Quero fornecer provas para partes de um programa Haskell que estou escrevendo como parte de minha tese. Até agora, porém, não consegui encontrar um bom trabalho de referência.
O livro introdutório de Graham Hutton, Programming in Haskell ( Google Books ) - que li enquanto aprendia Haskell - aborda algumas técnicas para raciocinar sobre programas como
- raciocínio equacional
- usando padrões não sobrepostos
- lista de indução
no capítulo 13, mas não é muito aprofundado.
Você pode recomendar livros ou artigos que forneçam uma visão geral mais detalhada das técnicas formais de prova para Haskell, ou outro código funcional?