clayrat/fav-ssr

Functional Data Structures and Algorithms in SSReflect [maintainer=@clayrat]

50

stars

100

commits

Rocq Prover

primary language

Oct 8, 2025

updated

2-3-tree
avl-tree
binomial-heap
coq
huffman-coding
leftist-heap
mathcomp
quadtree
redblack-tree
ssreflect
Browse cluster: Formal Mathematics in Rocq/Coq

README

Functional Data Structures and Algorithms in SSReflect

Docker CI Contributing Code of Conduct Zulip

A port of the book https://fdsa-book.net/ 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

Contributors

clayrat

94 commits

ablearthy

4 commits

cattingcat

1 commits

palmskog

1 commits

clayrat/fav-ssr

Functional Data Structures and Algorithms in SSReflect [maintainer=@clayrat]

50

stars

100

commits

Rocq Prover

primary language

Oct 8, 2025

updated

2-3-tree
avl-tree
binomial-heap
coq
huffman-coding
leftist-heap
mathcomp
quadtree
redblack-tree
ssreflect
Browse cluster: Formal Mathematics in Rocq/Coq

README

Functional Data Structures and Algorithms in SSReflect

Docker CI Contributing Code of Conduct Zulip

A port of the book https://fdsa-book.net/ 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

Contributors

clayrat

94 commits

ablearthy

4 commits

cattingcat

1 commits

palmskog

1 commits

Languages

Rocq Prover

99.8%