CakeML/cakeml

Formalise DEFLATE and add implementation to examples

開放

#806 建立於 2020年11月16日

 (7 則留言) (0 個反應) (0 位負責人)Standard ML (98 個分叉)auto 404
enhancementgood first issuemedium effort

倉庫指標

星標
 (1,169 顆星)
PR 合併指標
 (PR 指標待抓取)

描述

Deflate is a lossless data compression file format that zip and gzip are based on.

The deflate algorithm would be a nice formalisation and verification exercise in HOL. The result of the formalisation effort could be used to construct a verified gzip-like executable using CakeML.

The same compression and decompression algorithm might come in handy inside the CakeML compiler, once the compiler stores bulky constant data structures as read-only data. Such bulky constants could, for example, be the AST for the basis library or the bignum library.

This project is likely to fit the scope of an internship or MSc thesis.

貢獻者指南