Skip to content

Dissertation: Verified functional data structures and algorithms

Notifications You must be signed in to change notification settings

razvankusz/verif-agda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Folder Structure:

The repository is split into documents and the agda-playground folder. All the code and resources associtated with it are in the agda-playground folder.

agda-playground contains all the Agda code that I have written.

The main folder is fingertree.

  Here we find the files that are needed for the dissertation.

  FingerTree-Isabelle is the implementation of the FingerTree as presented on the
Isabelle page. I find it relevant as it shows how much easier proofs become when
we give up the nested structure, to the cost of explicitly mentioning level constraints.

  FingerTree-measure is the main implementation of the fingerTree, which is both
nested and contains the measurment information necessary for building further data structures on top

  FingerTree-Measured-Isabelle is a failed attempt of adding the measurement info to the
isabelle implementation

  FingerTree-Node1 is an attempt to make proofs easier by copying some of the isabelle ideas - it failed.

  FingerTree is the original implementation by the guy on github, modified to run and some explanations of
why proofs are hard.

  measure.agda is not used.

  numbers.agda provides lemmas about natural numbers and lists which are being used in the examples.

  There is also a Class folder, which comes from the Standard library but I added it here because I wanted to change something

  The NestedDatatypes folder gives some more examples of nested datatypes and proofs on them (nest and debrujin notation)

Another important file is a syntax_notes.txt where I am writing Agda knowledge that I find bizzare and easy to forget.

In the agda-playground, more important are chalmers which is the original tutorial and llrb which is an example of previous work done in this field.

The Agda version I am using is 2.5.1.1

About

Dissertation: Verified functional data structures and algorithms

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published