CakeML/cakeml

Formalise DEFLATE and add implementation to examples

Ouverte

#806 ouverte le 16 nov. 2020

 (7 commentaires) (0 réaction) (0 personne assignée)Standard ML (98 forks)auto 404
enhancementgood first issuemedium effort

Métriques du dépôt

Stars
 (1 169 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

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.

Guide contributeur