General: mathematical foundations of programming languages
Theory and practice of functional programming, especially
Haskell and
Agda
Higher-order abstract syntax and
Fiore-Plotkin-Turi style semantics
Higher-order rewriting and its categorical algebraic semantics
News
Theory and Practice of Second-Order Rewriting: Foundation, Evolution, and SOL.
Extended abstract,
Slides,
Video.
An invited talk
at 15th International Symposium on Functional and Logic Programming (FLOPS'20), presented on 8, September, 2020.
SOL system (web interface)
is available. You can try confluence and termination checking of
higher-order computation by SOL at the web.
Polymorphic computation systems: Theory and practice of confluence
with call-by-value
(with Tatsuya Abe and Kentaro Kikuchi),
Science of Computer Programming, Elsevier, Volume 187, 15 February 2020, 102322.
Available:
Paper in ScienceDirect.
How to prove decidability of equational theories with second-order
computation analyser SOL
Journal of Functional Programming, Cambridge University Press,
Vol. 29, e20, 2019.
Available:
Paper in CambridgeCore.
Polymorphic Rewrite Rules: Confluence, Type Inference, and Instance Validation,
14th International Symposium on Functional and Logic Programming
(FLOPS 2018),
Lecture Notes in Computer Science 10818, pp.99-115, Springer, 2018.
Best Paper Award. Available:
PDF(Author's version),
Slides of my talk.
Implementation:
PolySOL (web interface)
Confluence Competition 2018,
(with T. Aoto, N. Hirokawa, A. Middeldorp J. Nagele, N. Nishida, K. Shintani, and H. Zankl),
3rd International Conference on Formal Structures for
Computation and Deduction (FSCD 2018),
the Leibniz International Proceedings in Informatics (LIPIcs), Vol . 108,
pp. 32:1-32:5, 2018.
Available:
Paper in DROPS
How to Prove Your Calculus is Decidable: Practical Applications of Second-order Algebraic Theories
and Computation,
Proceedings of the ACM on Programming Languages,
Volume 1, Issue ICFP, September 2017, Article No. 22, pp.1-28, ACM Press, 2017.
Available:
Paper in the ACM Digital Library,
Slides of my talk.
Recorded live streaming of my talk at ICFP'17 (in Oxford University Podcasts).
Implementation:
PolySOL (web interface)
A Functional Implementation of Function-as-Constructor
Higher-Order Unification ,
International Workshop on Unification
(UNIF'17),
a part of
FSCD'17, Oxford, 2017.
Available:
PDF,
Slides of a talk at UNIF'17.
Strongly Normalising Cyclic Data Computation
by Iteration Categories of
Second-Order Algebraic Theories,
The 1st International Conference on Formal Structures for Computation and Deduction
(FSCD'16),
the Leibniz International Proceedings in Informatics (LIPIcs), Vol . 52,
pp.21:1-21:18, 2016.
Available:
PDF,
Slides of a talk at FSCD'16.
Multiversal Polymorphic Algebraic Theories: Syntax, Semantics, Translations, and Equational Logic,
(with Marcelo Fiore)
Twenty-Eighth Annual ACM/IEEE Symposium on Logic in Computer Science,
(LICS 2013)
pp.520-529, IEEE Computer Society, 2013.
Available:
PDF,
Slides of a talk at LICS'13.
Correct Looping Arrows from Cyclic Terms: Traced Categorical Interpretation in Haskell,
11th International Symposium on Functional and Logic Programming
(FLOPS 2012),
Lecture Notes in Computer Science 7294, pp.136-150, Springer, 2012.
Available:
PDF,
Slides of a talk at FLOPS'12.
Related codes:
A Foundation for GADTs and Inductive Families: Dependent Polynomial Functor Approach,
(with Marcelo Fiore)
7th ACM SIGPLAN Workshop on Generic Programming (WGP 2011), pp.59-70, ACM Press, 2011.
Available:
PDF,
Slides (at Shonan workshop AIM-DTP'11),
Slides (at WGP'11)
Polymorphic Abstract Syntax via Grothendieck Construction,
14th International Conference on
Foundations of Software Science and Computation Structures,
(FoSSaCS 2011),
Lecture Notes in Computer Science 6604, pp.381-395, Springer-Verlag, 2011.
Available:
PDF,
Slides of a talk at FoSSaCS'11,
Slides of a talk at PPL'13.
Semantic Labelling for Proving Termination of Combinatory Reduction Systems,
18th International Workshop on Functional and
(Constraint) Logic Programming
(WFLP 2009),
Lecture Notes in Computer Science 5979, pp.62-78,
Springer-Verlag, 2010.
Available:
PDF,
Slides of a talk at WFLP'09.
Initial Algebra Semantics for Cyclic Sharing Structures,
Ninth International Conference on Typed Lambda Calculi and Applications
(TLCA 2009),
Lecture Notes in Computer Science 5608, pp.127-141,
Springer-Verlag, 2009.
Available:
Slides of a talk at TLCA'09.
補関数の生成による複製機能付きプログラムの自動双方向化
,
(with 松田 一孝, 胡 振江, 中野 圭介, 武市 正人)
コンピュータソフトウェア, Vol. 26, No. 2, pp. 56-75, 2009.
Available: Paper in J-STAGE
Higher-Order Semantic Labelling for Inductive Datatype Systems,
Ninth ACM SIGPLAN International Conference on Principles and Practice of Declarative Programming (PPDP 2007),
ACM Press, pp.97-108, 2007.
Available: Paper in the ACM Digital Library,
PDF,
Slides of a talk at PPDP'07.
Representing Cyclic Structures as Nested Datatypes,
(with N. Ghani,
T. Uustalu, V. Vene)
Proceedings of 7th Symposium on Trends in Functional Programming
(TFP 2006),
pp. 173-188, University of Nottingham, April 2006.
Available: PDF
高階書換え系の停止性のための代数モデル
(第12回日本ソフトウェア科学会論文賞),
コンピュータソフトウェア, Vol. 23, No. 2, pp. 142-156, 岩波書店,
2006.
Available:
Paper in J-STAGE
Universal Algebra for Termination of Higher-Order Rewriting,
16th International Conference on Rewriting Techniques and Applications
(RTA'05),
Lecture Notes in Computer Science 3467, Springer, pp. 135-149, 2005.
Available: PDF,
Slides of a talk at RTA'05
Free Σ-monoids: A Higher-Order Syntax with Metavariables,
The Second Asian Symposium on Programming Languages and Systems (APLAS 2004),
Lecture Notes in Computer Science 3202, Springer, pp. 348-363, 2004.
Available: PDF
Term Rewriting with Variable Binding: An Initial Algebra Approach,
Fifth ACM SIGPLAN International Conference on Principles and Practice of Declarative Programming (PPDP 2003), ACM Press, pp.148-159, 2003.
Available: Paper in the ACM Digital Library, DVI, PS
A Logic Programming Language based on Binding Algebras,
International Symposium on Theoretical Aspects of Computer Software (TACS 2001),
Lecture Notes in Computer Science 2215, Springer, pp. 243-262,
2001.
Abstract: English
Semantics for Interactive Higher-order Functional-logic Programming,
Doctoral Thesis, University of Tsukuba, 1998.
Abstract: English
Available: PDF,PS
Algebraic Semantics for Higher-Order Functional-Logic Programming,
Proceedings of the 2nd Fuji International Workshop on Functional and Logic Programming (FLOPS'96), World Scientific, Singapore, pp. 194-209, 1996.
Abstract: English, Japanese
Available: DVI, PS,PDF
項書換え系としての論理プログラム.
(with 鈴木大郎)
コンピュータソフトウェア, Vol. 14, No. 6, pp. 29-43, 岩波書店, 1997.
Available: Paper in J-STAGE
M. Hamana, Semantics of a Functional-Logic Programming Language,
Master Thesis, University of Tsukuba, 1995.
作用型項書換え系に基づく関数論理型言語の設計と実装 (A Design and Implementation of a Functional-Logic Language Based on Applicative Term Rewriting Systems),
(with T. Nishioka, K. Nakahara, A. Middeldorp and T.Ida)
情報処理学会論文誌 (Transactions of Information Processing Society of Japan), Vol. 36, No. 8, 1897-1905, in Japanese, pp. 1897-1905, 1995.
Abstract: Japanese
Available: PDF
Dependent Polymorphism
27th Conf. Japan Society for
Software Science and Technology (JSSST'10),
15 September, 2010, Tokyo. Slides.
Another Initial Algebra Semantics of Inductive Families
for Programming
Dependently Typed Programming 2010,
associated with LICS,
10 July, 2010, Edinburgh.
Inductive Cyclic Sharing Data Structures
30 June, 2008. Slides.
What is the Category for Haskell?
CAPS, IPL, University of Tokyo, 23 October, 2007.
Slides.
Representing Cyclic Structures as Nested Datatypes,
M. Hamana. Simple beta0-Unification for Terms with Context Holes, UNIF 2002, July 2002, Paper, Slides.
M. Hamana. Interactive Functional-logic Programming by Conditional Term Rewriting Systems,
Proceedings of JSSST Workshop on Programming and Programming Languages (PPL'99), 1999.
Available: DVI, PS
M. Hamana, Term rewriting with sequences,
Proceedings of the First International Theorema Workshop, Report Series No. 97-20. RISC-Linz, Johannes Kepler University, 1997.
Available: DVI, PS
Address
Department of Computer Science, Faculty of Engineering,
Gunma University
1-5-1 Tenjincho Kiryu, Gunma 376-8515,
JAPAN
E-mail: hamana ## cs.gunma-u.ac.jp (replace ## with @)
WWW: www.cs.gunma-u.ac.jp/~hamana/