



Publications 

Journal Articles  
1. 
YuHsi Chiang, ShinCheng Mu, "Formal derivation of greedy algorithms from relational specifications: a tutorial," Journal of Logic and Algebraic Programming, volume 85, number 5, Part 2, pages 879–905, August 2016. 
2. 
Sharon Curtis, ShinCheng Mu, "Calculating a lineartime solution to the densestsegment problem," Journal of Functional Programming, volume 25, number 0, pages e22 (32 pages), December 2015. 
3. 
ShinCheng Mu, YuHan Lyu, and Akimasa Morihata, "Approximate by Thinning: Deriving Fully PolynomialTime Approximation Schemes," Science of Computer Programming, volume 98, number 4, pages 484–515, February 2015. 
4. 
ShinCheng Mu and José Nuno Oliveira, "Programming from Galois connections," Journal of Logic and Algebraic Programming, volume 81, number 6, pages 680–704, August 2012. ::: 
5. 
SC. Mu, HS. Ko, and P. Jansson, "Algebra of programming in Agda: dependent types for relational program derivation," Journal of Functional Programming, volume 19, number 5, pages 545579, September 2009. ::: 
6. 
Z. Hu, SC. Mu and M. Takeichi, "A programmable editor for developing structured documents based on bidirectional transformations," HigherOrder and Symbolic Computation, volume 21, number 12, pages 89118, May 2008. 
7. 
SC. Mu, Z. Hu and M. Takeichi, "Bidirectionalizing tree transformation languages: a case study," JSSST Computer Software (コンピュータソフトウェア), volume 23, number 2, pages 129141, 2006. 
8. 
R. S. Bird and SC. Mu, "Countdown: a case study in origami programming," Journal of Functional Programming, volume 15, number 5, pages 679702, 2005. 
9. 
R. S. Bird and SC. Mu, "Inverting the BurrowsWheeler transform," Journal of Functional Programming, volume 14, number 6, pages 603612, November 2004. 
10. 
SC. Mu and R. S. Bird, "Theory and applications of inverting functions as folds," Science of Computer Programming, volume 51, pages 87116, 2003. 


Conference Papers  
1. 
YuFang Chen, ChihDuo Hong, Ondrej Lengal, ShinCheng Mu, Nishant Sinha, BowYaw Wang, "An executable sequential specification for spark aggregation," to appear in International Conference on Networked Systems (NETYS),. 
2. 
ShinCheng Mu, YuHsi Chiang, and YuHan Lyu, "Queueing and glueing for optimal partitioning," International Conference on Functional Programming (ICFP 2016), Eijiro Sumii, editor, ACM Press, pages 158167, September 2016. 
3. 
Bruno C. d. S. Oliveira, ShinCheng Mu, ShuHung You, "Modular reifiable matching: a listoffunctors approach to twolevel types," Haskell Symposium 2015, Ben Lippmeier, editor, pages 8293, September 2015. 
4. 
ShinCheng Mu, TingWei Chen, "Functional pearl: Nearest shelters in Manhattan," Programming Languages and Systems, Lecture Notes in Computer Science, 8858, pages 159175, November 2014. 
5. 
YunYan Chi and ShinCheng Mu, "Constructing list homomorphisms from proofs," The 9th Asian Symposium on Programming Languages and Systems (APLAS 2011), December 2011. 
6. 
ShinCheng Mu and Akimasa Morihata, "Generalising and Dualising the Third ListHomomorphism Theorem," International Conference on Functional Programming, pages 385391, September 2011. 
7. 
ShinCheng Mu and Jose Nuno Oliveira, "Programming from Galois Connections," 12th International Conference on Relational and Algebraic Methods in Computer Science (RAMiCS 12), Lecture Notes in Computer Science, May 2011. ::: 
8. 
ShinCheng Mu, YuHan Lyu, and Akimasa Morihata, "Constructing datatypegeneric fully polynomialtime approximation schemes using generalised thinning," The 6th ACM SIGPLAN workshop on Generic programming (WGP 2010), Bruno C.d.S. Oliveira and Marcin Zalewski, editor, ACM, pages 97108, September 2010. ::: 
9. 
Kazutaka Matsuda, ShinCheng Mu, Zhenjiang Hu, and Masato Takeichi, "A grammarbased approach to invertible programs," 19th European Symposium on Programming (ESOP 2010), Lecture Notes in Computer Science, 6012, pages 448467, March 2010. ::: 
10. 
SC. Mu, HS. Ko, and P. Jansson, "Algebra of programming using dependent types," Mathematics of Program Construction 2008, Lecture Notes in Computer Science, 5133, pages 268283, July 2008. ::: 
11. 
SC. Mu, TC. Tsai, K. Nakano, "XML Stream Processing Using a Lazy Concurrent Language," Programming Language Techniques for XML (PLANX 2008), January 2008. 
12. 
SC. Mu, "Maximum segment sum is back: deriving algorithms for two segment problems with bounded lengths," Partial Evaluation and Program Manipulation (PEPM '08), pages 3139, January 2008. ::: 
13. 
K. Nakano and SC. Mu, "A pushdown machine for recursive XML processing," The 4th Asian Symposium on Programming Language and Systems, Lecture Notes in Computer Science, 4279, pages 340356, 2006. 
14. 
SC. Mu, Z. Hu and M. Takeichi, "An algebraic approach to bidirectional updating," Asian Symposium on Programming Languages and Systems, Lecture Notes in Computer Science, 3302, pages 218, November 2004. 
15. 
SC. Mu, Z. Hu and M. Takeichi, "An injective language for reversible computation," Mathematics of Program Construction 2004, Lecture Notes in Computer Science, 3125, pages 289313, July 2004. 
16. 
SC. Mu and R. S. Bird, "Rebuilding a tree from its traversals: a case study of program inversion," Asian Symposium on Programming Languages and Systems, Lecture Notes in Computer Science, 2895, pages 265282, 2003. 
17. 
SC. Mu and R. S. Bird, "Inverting functions as folds," Mathematics of Program Construction, Lecture Notes in Computer Science, 2386, July 2002. 
18. 
SC. Mu and R. S. Bird, "Quantum functional programming," 2nd Asian Workshop on Programming Languages and Systems, December 2001. 
19. 
R. S. Bird and SC. Mu, "Inverting the BurrowsWheeler Transform," ACM SIGPLAN 2001 Haskell Workshop, September 2001, Superseded by the extended version for Journal of Functional Programming 
20. 
SC. Mu and R. S. Bird, "On building trees with minimum height, relationally," First Asian Workshop on Programming Languages and Systems, December 2000. 
21. 
TyngRuey Chuang and ShinCheng Mu, "Outofcore functional programming with typebased primitives," Practical Aspects of Declarative Languages, Lecture Notes in Computer Science, 1753, Enrico Pontelli and Victor Santos Costa, editor, pages 3246, Boston, Massachusetts, USA, January 2000, SpringerVerlag 
22. 
TR. Chuang and SC. Mu, "Outofcore functional programming with typebased primitives," Practical Aspects of Declarative Languages, January 2000. 
23. 
S. Seres and SC. Mu, "Optimisation problems in logic programming: an algebraic approach," Proceedings of LPSE'00, 2000. 


Others  
1. 
SC. Mu, "A Calculational Approach to Program Inversion," Oxford University Computing Laboratory, March 2003. 
2. 
R. S. Bird, J. Gibbons and SC. Mu, "Algebraic methods for optimisation problems," Algebraic and Coalgebraic Methods in the Mathematics of Program Construction, pages 281307, SpringerVerlag, January 2002. 
3. 
SC. Mu and R. S. Bird, "Algebraic Methods for Optimisation Problems,", Transfering dissertation 2000. 











