CakeML/cakeml

Formalise DEFLATE and add implementation to examples

Aperta

#806 aperta il 16 nov 2020

 (7 commenti) (0 reazioni) (0 assegnatari)Standard ML (98 fork)auto 404
enhancementgood first issuemedium effort

Metriche repository

Star
 (1169 stelle)
Metriche merge PR
 (Metriche PR in attesa)

Descrizione

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.

Guida contributor