## Longest segment of balanced parentheses — an exercise in program inversion in a segment problem

Shin-Cheng Mu and Tsung-Ju Chiang. To appear in Journal of Functional Programming.
[arXiv:2101.09699]

## A greedy algorithm for dropping digits

Richard Bird and Shin-Cheng Mu. To appear in Journal of Functional Programming.

## Not by equations alone: reasoning with extensible effects

Oleg Kiselyov, Shin-Cheng Mu and Amr Sabry. Journal of Functional Programming , Volume 31 , 2021 , e2.
[PDF]

## Declarative pearl: deriving monadic quicksort

Shin-Cheng Mu and Tsung-Ju Chiang. In Functional and Logic Programming (FLOPS), Keisuke Nakano and Konstantinos Sagonas, editors, pp. 124-138. April 2020.
[PDF |Agda Proofs]

## How to Compute Fibonacci Numbers?

Some inductive proofs and some light program derivation about Fibonacci numbers. If you think the fastest way to compute Fibonacci numbers is by a closed-form formula, you should read on!

It is folklore knowledge that a pair of adjoint functors induces a monad and a comonad. Due to my recent work, I had to load relevant information into my brain cache. However, it turned out to be hard for me to find all the pieces of information I need in one place. Therefore, I am going to summarise here what I know and need, hoping it will be helpful for someone like me.

I started to take an interest in reasoning and derivation of monadic programs around 2016-17. Several years having passed, I collaborated with many nice people, managed to get some results published, failed to publish some stuffs I personally like, and am still working on some interesting tiny problems. This post summaries what was done, and what remains to be done.

## Handling local state with global state

Koen Pauwels, Tom Schrijvers and Shin-Cheng Mu. In Mathematics of Program Construction (MPC), Graham Hutton, editor, pp. 18-44. Springer, October 2019.
[PDF]

## Calculating a backtracking algorithm: an exercise in monadic program derivation

Shin-Cheng Mu. Tech. Report TR-IIS-19-003, Institute of Information Science, Academia Sinica, June 2019.
[PDF]

## Equational reasoning for non-determinism monad: the case of Spark aggregation

Shin-Cheng Mu. Tech. Report TR-IIS-19-002, Institute of Information Science, Academia Sinica, June 2019.
[PDF]