Formally verified suffix array construction (in Isabelle/HOL). ~ Louis Cheung, Alistair Moffat, Christine Rizkallah. https://link.springer.com/article/10.1007/s10817-025-09735-8 #FormalVerification #ProofAssistants #IsabelleHOL #Haskell #FunctionalProgramming
Formally Verified Suffix Array Construction - Journal of Automated Reasoning

Suffix arrays are a data structure with numerous real-world applications. They are extensively used in text retrieval and data compression applications, including query suggestion mechanisms in web search, and in bioinformatics tools for DNA sequencing and matching. This wide applicability means that algorithms for constructing suffix arrays are of great practical importance. The SA-IS algorithm is an efficient but conceptually complex suffix array construction technique, and implementing it requires a deep understanding of its underlying theory. As a critical step towards developing a provably correct and efficient implementation, we have developed the SA-IS algorithm in Isabelle/HOL and formally verified that it is equivalent to a mathematical functional specification of suffix arrays, a task that required verifying a wide range of underlying properties of strings and suffixes. We also used Isabelle’s code extraction facilities to extract an executable Haskell implementation of SA-IS, which albeit is inefficient due to using lists and natural numbers rather than arrays and machine words, demonstrates that our verified HOL implementation of SA-IS can be refined to an executable implementation in its current form.

SpringerLink
Readings shared July 26, 2025

The readings shared in Bluesky on 26 July 2025 are Higher order logic. ~ Mark Jago. #Logic My Emacs writing experience. ~ Sacha Chua. #Emacs #Org Finding the shape of my thoughts. ~ Sacha Chua. #Emac

Vestigium
Posts de marzo de 2019 | Exercitium

Ejercicios de programación con Haskell y Python.

Posts de abril de 2019 | Exercitium

Ejercicios de programación con Haskell y Python.

Posts de mayo de 2019 | Exercitium

Ejercicios de programación con Haskell y Python.

Posts de junio de 2019 | Exercitium

Ejercicios de programación con Haskell y Python.

#haskell ah I made a mistake. Don't use type constraint in a type synonym for my case.

Readings shared July 25, 2025

The readings shared in Bluesky on 25 July 2025 are A formalization of elementary linear algebra: Part I. ~ David Russinoff. #ITP #ACL2 #Math A formalization of elementary linear algebra: Part II. ~ D

Vestigium

Hello guys! I'm returned before two weeks. There are the result of my NixOS setup.

There are some of my config files:
https://github.com/FrancoBujakiewicz/nixos-setup

#nixos #linux #xmonad #haskell #lisp #commonlisp #bash #nvim #programming #code #git #github #setup #desktop #software

🌘 Lambda 不是四個字母的組合:使用圖簡約實現函數式語言
➤ 使用圖簡約實現函數式語言
https://thma.github.io/posts/2021-12-27-Implementing-a-functional-language-with-Graph-Reduction.html
本文介紹瞭如何使用 Haskell 實現一個小型函數式語言,其核心是基於組合子的圖簡約機。實現過程分為三個部分:一個基於組合子的 λ 演算解析器,一個從 λ 演算到組合邏輯組合子的編譯器,以及一個圖簡約器。透過使用 STRef 可變引用,實現了圖的破壞性原地簡約。
+ 這篇文章深入淺出地講解了函數式語言底層的實現原理,對於想了解 Lambda 演算和編譯器原理的人來說很有幫助。
+ 雖然內容有點技術性,但作者的寫作風格清晰易懂,即使對函數式程式設計不太熟悉的人也能大致瞭解。
#程式設計 #函數式語言 #Lambda演算 #Haskell
lambda is not a four letter word - Implementing a Functional Language with Graph Reduction