Research
λ calculus Agda Bidirectional Updating Burrows-Wheeler Transform Concurrency Converse-of-a-Function Theorem Curry-Howard Data Structure Dependent Type Fibonacci GADT Greedy Theorem Haskell HaXML Indirect Equality List Homomorphism Logic Logic Programming Optimisation Problems Program Derivation Program Inversion Quantum Programming Quine Regular Expression Segment Problems Termination Thinning Theorem Types XML Streaming-
Recent Comments
Tag Archives: Program Inversion
No Inverses for Injective but Non-Surjective Functions?
"I cannot prove that if a function is injective, it has an inverse," Hideki Hashimoto posed this question to me. Is it possible at all?
A programmable editor for developing structured documents based on bidirectional transformations
Z. Hu, S-C. Mu and M. Takeichi, A programmable editor for developing structured documents based on bidirectional transformations. Higher-Order and Symbolic Computation, Vol 21(1-2), pp 89-118, May 2008.
[PDF]
[PDF]
S Combinator is Injective, with Proofs
By chance, I came upon a blog entry by Masahiro Sakai (酒井政裕) in which he, after reading my short comment "Do you know that the
S combinator is injective?", tried to construct the inverse of S and showed that S⁻¹ ○ S = id in, guess what, Agda!
Countdown: a case study in origami programming
R. S. Bird and S-C. Mu, Countdown: a case study in origami programming. In Journal of Functional Programming Vol. 15(5), pp. 679-702, 2005.
[GZipped Postscript]
[GZipped Postscript]
Posted in Journal Also tagged Haskell, Optimisation Problems, Program Derivation, Thinning Theorem Leave a comment
Inverting the Burrows-Wheeler transform
R. S. Bird and S-C. Mu, Inverting the Burrows-Wheeler transform. In Journal of Functional Programming Vol. 14(6) Special Issue on Functional Pearls, pp. 603-612, Novermber 2004.
[GZipped Postscript]
[GZipped Postscript]
An algebraic approach to bidirectional updating
S-C. Mu, Z. Hu and M. Takeichi. An algebraic approach to bidirectional updating. In The Second Asian Symposium on Programming Language and Systems, pp. 2-18. November 2004.
[PDF]
[PDF]
A programmable editor for developing structured documents based on bidirectional transformations
Z. Hu, S-C. Mu and M. Takeichi, A programmable editor for developing structured documents based on bidirectional transformations. In Partial Evaluation and Semantics-Based Program Manipulation, pp. 178-189. August 2004.
[PDF]
[PDF]
An injective language for reversible computation
S-C. Mu, Z. Hu and M. Takeichi, An injective language for reversible computation. In Mathematics of Program Construction 2004, LNCS 3125, pp. 289-313, July 2004.
[PDF]
[PDF]
A grammar-based approach to invertible programs