Home

Awesome

<!--- This file was generated from `meta.yml`, please do not edit manually. Follow the instructions on https://github.com/coq-community/templates to regenerate. --->

Functional Data Structures and Algorithms in SSReflect

Docker CI Contributing Code of Conduct Zulip

A port of the book https://functional-algorithms-verified.org/ to Coq/SSReflect.

The book was previously called "Functional Algorithms Verified", hence the FAV acronym.

Meta

Building instructions

To build manually, do:

make   # or make -j <number-of-cores-on-your-machine>

Contents

  1. Basics

Part I: Sorting and Selection

  1. Sorting
  2. Selection

Part II: Search Trees

  1. Binary Trees
  2. Binary Search Trees
  3. Abstract Data Types
  4. 2-3 Trees
  5. Red-Black Trees
  6. AVL Trees
  7. Beyond Insert and Delete: \cup, \cap and -
  8. Arrays via Braun Trees
  9. Tries
  10. Region Quadtrees

Part III: Priority Queues

  1. Priority Queues
  2. Leftist Heaps
  3. Priority Queues via Braun Trees
  4. Binomial Heaps

Part IV: Advanced Design and Analysis Techniques

  1. Dynamic Programming
  2. Amortized Analysis
  3. Queues
  4. Splay Trees
  5. Skew Heaps
  6. Pairing Heaps

Part V: Selected Topics

  1. Knuth–Morris–Pratt String Search
  2. Huffman’s Algorithm
  3. Alpha-Beta Pruning