List of Papers / Presentations:  <Selected Publications>  <Back>

2017
  1. Akimasa Morihata:
    Incremental computing with data structures.
    Science of Computer Programming, 2017. In press (Available online).
  2. 森畑明昌, 江本健斗, 松崎公紀, 胡振江, 岩崎英哉:
    頂点主体並列グラフ処理の制約解消器による効率化.
    In: 日本ソフトウェア科学会第34回大会講演論文集, 一般8-1-L, 2017.
  3. 松崎公紀, 岩崎英哉, 江本健斗, 胡振江, 森畑明昌:
    複数の頂点主体グラフ計算フレームワーク向けの中間表現とコード生成器.
    In: 日本ソフトウェア科学会第34回大会講演論文集, 一般10-3-L, 2017.
  4. 山口和紀[編]:
    情報 第2版.
    東京大学出版会, 2017. (5.3-5.4章を担当).
2016
  1. Compilation from Lambda Calculus with Algebraic Simplification to Record Calculus.
    Presented at: 情報処理学会 第111回プログラミング研究発表会, 日本アイ・ビー・エム株式会社 本社事業所, 2016.
  2. From Identification of Parallelizability to Derivation of Parallelizable Codes.
    Presented at: The 5th ACM SIGPLAN Workshop on Functional High-Performance Computing, Nara Kasugano International Forum, Japan, 2016. (invited keynote).
  3. Kento Emoto, Kiminori Matsuzaki, Zhenjiang Hu, Akimasa Morihata, Hideya Iwasaki:
    Think like a vertex, behave like a function! A functional DSL for vertex-centric big graph processing.
    In: Proceedings of the 21st ACM SIGPLAN International Conference on Functional Programming, ICFP 2016, Nara, Japan, September 18-22, 2016, pp. 200-213, ACM, 2016.
  4. Program Transformations for Developing Efficient and Correct Programs with Ease.
    Presented at: ACM SIGPLAN Programming Languages Mentoring Workshop, PLMW 2016, Nara Kasugano International Forum, Japan, 2016. (invited talk).
  5. 森畑明昌:
    頂点主体グラフ処理の構成的アルゴリズム論に基づく定式化.
    In: 日本ソフトウェア科学会第33回大会講演論文集, PPL3-3, 2016.
  6. 江本健斗, 松崎公紀, 胡振江, 森畑明昌, 岩崎英哉:
    並列処理のための関数型領域特化言語Fregelとその評価.
    In: 日本ソフトウェア科学会第33回大会講演論文集, 一般4-1, 2016.
  7. 番原睦則, 鍋島英知, 森畑明昌:
    編集にあたって(<特集>SAT技術の進化と応用─パズルからプログラム検証まで─).
    情報処理, Vol. 57, No. 8, pp. 702-703, 2016.
  8. 森畑明昌:
    プログラミングするプログラム─自動プログラム作成最前線─.
    情報処理, Vol. 57, No. 6, pp. 544-549, 2016.
  9. 森畑明昌:
    東京大学における全学プログラミング教育 (<特集>プログラミング入門をどうするか).
    情報処理, Vol. 57, No. 4, pp. 358-361, 2016.
  10. 森畑明昌:
    代数的性質に基づくラムダ式の並列評価.
    In: 第18回プログラミングおよびプログラミング言語ワークショップ論文集, 2016.
  11. 江本健斗,松崎公紀,胡振江,森畑明昌,岩崎英哉:
    大規模グラフ並列処理のための関数型領域特化言語.
    In: 第18回プログラミングおよびプログラミング言語ワークショップ論文集, 2016.
  12. Akimasa Morihata:
    Incremental Computing with Abstract Data Structures.
    In: Functional and Logic Programming - 13th International Symposium, FLOPS 2016, Kochi, Japan, March 4-6, 2016, Proceedings, Lecture Notes in Computer Science, Vol. 9613, pp. 215-231, Springer, 2016.
2015
  1. On the Size of Deterministic Finite Automata Obtained from XPath Expression.
    Presented at: 情報処理学会第106回プログラミング研究会, 国立情報学研究所, 2015.
  2. 森畑明昌:
    最適部分列問題に対する統一的な並列アルゴリズム.
    In: 日本ソフトウェア科学会第32回大会講演論文集, 一般2-1, 2015.
  3. A Datatype- and Editing-Operation-Generic Incremental Computation.
    Presented at: 情報処理学会第103回プログラミング研究会, 産業技術総合研究所, 2015.
  4. 遠藤誠典, 百足勇人, 森畑明昌, 上野雄大, 大堀 淳:
    変数参照関係を用いた関数型プログラムのコードリーディング支援.
    コンピュータソフトウェア, Vol. 32 (1), p. 1_194-1_212, 2015.
  5. Shin-Cheng Mu, Yu-Han Lyu, Akimasa Morihata:
    Approximate by Thinning: Deriving Fully Polynomial-Time Approximation Schemes.
    Science of Computer Programming, Vol. 98 (4), pp. 484-515, 2015.
2014
  1. Akimasa Morihata, Kiminori Matsuzaki:
    Parallel Tree Contraction with Fewer Types of Primitive Contraction Operations and Its Application to Trees of Unbounded Degree.
    IPSJ Journal of Programming, Vol. 7, No. 5, pp. 1-9, 2014.
  2. Shigeyuki Sato, Akimasa Morihata:
    Syntax-Directed Divide-and-Conquer Data-Flow Analysis.
    In: Programming Languages and Systems - 12th Asian Symposium, APLAS 2014, Singapore, November 17-19, 2014, Proceedings, Lecture Notes in Computer Science, Vol. 8858, pp. 392-407, Springer, 2014.
  3. Katsuhiro Ueno, Yutaka Fukasawa, Akimasa Morihata, Atsushi Ohori:
    The Essence of Ruby.
    In: Programming Languages and Systems - 12th Asian Symposium, APLAS 2014, Singapore, November 17-19, 2014, Proceedings, Lecture Notes in Computer Science, Vol. 8858, pp. 78-98, Springer, 2014.
  4. Akimasa Morihata:
    A Short Cut to Parallelization Theorems (特別講演).
    In: 日本ソフトウェア科学会第31回大会講演論文集, PPL1-1, 2014.
  5. Akimasa Morihata, Masato Koishi, Atsushi Ohori:
    Dynamic Programming via Thinning and Incrementalization.
    In: Functional and Logic Programming, 12th International Symposium, FLOPS 2014, Kanazawa, Japan, 2014, Proceedings, Lecture Notes in Computer Science, Vol. 8475, pp. 186-202, Springer, 2014.
  6. 森畑明昌:
    漸増計算法の第三リスト準同型定理による系統的導出.
    In: 第16回プログラミングおよびプログラミング言語ワークショップ論文集, 2014.
  7. 斎藤皓, 上野雄大, 森畑明昌, 大堀淳:
    SML#のSQL統合機能への行集約機能の実装.
    In: 第16回プログラミングおよびプログラミング言語ワークショップ論文集, 2014.
2013
  1. Akimasa Morihata:
    A Short Cut to Parallelization Theorems.
    In: ICFP'13: Proceedings of the 18th ACM SIGPLAN International Conference on Functional Programming, Boston, Massachusetts, September 25 - 27, 2013, pp. 245-256, ACM, 2013.
  2. ソフトウェア構築における人間とシステムのディスコミュニケーション---最適経路探索を例に---.
    Presented at: JSSST x FTD, 東京大学, 2013. 講演動画.
  3. 森畑明昌:
    XPath問合せのWork Efficientな分散並列評価.
    In: 日本ソフトウェア科学会第30回大会講演論文集, 一般4-3, 2013.
  4. 佐藤重幸, 森畑明昌:
    構文主導型データフロー解析の並列実装.
    In: 日本ソフトウェア科学会第30回大会講演論文集, PPL3-3, 2013.
  5. 遠藤誠典, 百足勇人, 森畑明昌, 上野雄大, 大堀淳:
    変数参照関係を用いた関数型プログラムのコードリーディング支援.
    In: 日本ソフトウェア科学会第30回大会講演論文集, PPL2-2, 2013.
  6. The Third List-homomorphism Theorem: Recent Developments of a Folk Theorem.
    Presented at: 3rd Parallelism-Oblivious Programming Workshop, Shonan Village Center, Japan, 2013.
  7. 森畑明昌:
    分割統治計算可能性の多相型を用いた保証.
    In: 第15回プログラミングおよびプログラミング言語ワークショップ論文集, 2013.
  8. 朝井雄大, 上野雄大, 森畑明昌, 大堀淳:
    Cとの連携機能を持つ関数型言語におけるプロファイラの試作.
    In: 第15回プログラミングおよびプログラミング言語ワークショップ論文集, 2013.
  9. 藤井貴啓, 上野雄大, 森畑明昌, 大堀淳:
    SML#のデータベース連携機能を活用したウェブアプリケーション構築技術.
    In: 第15回プログラミングおよびプログラミング言語ワークショップ論文集, 2013.
  10. 小石真人, 森畑明昌, 大堀淳:
    二次元最大重み和問題のプログラム変換に基づく解法.
    In: 第15回プログラミングおよびプログラミング言語ワークショップ論文集, 2013.
2012
  1. Calculating Parallel Algorithms for Size-constrained Segment Problems.
    Presented at: IFIP working group 2.1 69th meeting, Sheraton Ottawa Hotel, Canada, 2012.
  2. 森畑明昌:
    並列木縮約を用いたマクロ木変換器の並列評価.
    In: 日本ソフトウェア科学会第29回大会講演論文集, 6A-2, 2012.
  3. Akimasa Morihata, Kazuhiko Kakehi, Zhenjiang Hu, Masato Takeichi:
    Manipulating Accumulative Functions by Swapping Call-time and Return-time Computations.
    Journal of Functional Programming, Vol. 22, No. 3, pp. 275-299, 2012.
  4. Akimasa Morihata:
    Macro Tree Transformations of Linear Size Increase Achieve Cost-Optimal Parallelism (Extended Abstract).
    In: the 1st International Workshop on Trends in Tree Automata and Tree Transducers, TTATT 2012, Proceedings, pp. 54-61, 2012.
  5. Akimasa Morihata:
    Calculational Developments of New Parallel Algorithms for Size-constrained Maximum-Sum Segment Problems.
    In: Functional and Logic Programming, 11th International Symposium, FLOPS 2012, Kobe, Japan, 2012, Proceedings, Lecture Notes in Computer Science, Vol. 7294, pp. 213-227, Springer, 2012.
  6. 森畑明昌:
    並列木縮約による並列データフロー解析.
    In: 第14回プログラミングおよびプログラミング言語ワークショップ論文集, pp. 85-99, 2012.
  7. 森畑明昌:
    先読み付き正規表現の有限状態オートマトンへの変換 (Translation of Regular Expression with Lookahead into Finite State Automaton).
    コンピュータソフトウェア, Vol. 29, No. 1, pp. 147-158, 2012.
2011
  1. Akimasa Morihata:
    Macro Tree Transformations of Linear Size Increase Achieve Cost-Optimal Parallelism.
    In: Programming Languages and Systems - 9th Asian Symposium, APLAS 2011, Kenting, Taiwan, December 5-7, 2011, Proceedings, Lecture Notes in Computer Science, Vol. 7078, pp. 204-219, Springer, 2011.
  2. Akimasa Morihata, Kiminori Matsuzaki:
    Balanced Trees Inhabiting Functional Parallel Programming (特別講演).
    In: 日本ソフトウェア科学会第28回大会講演論文集, 3A-1, 2011.
  3. Akimasa Morihata, Kiminori Matsuzaki:
    Balanced Trees Inhabiting Functional Parallel Programming.
    In: ICFP'11: Proceedings of the 16th ACM SIGPLAN International Conference on Functional Programming, Tokyo, Japan, September 19-21, 2011, pp. 117-128, ACM, 2011.
  4. Shin-Cheng Mu, Akimasa Morihata:
    Generalising and Dualising the Third Homomorphism Theorem (functional pearl).
    In: ICFP'11: Proceedings of the 16th ACM SIGPLAN International Conference on Functional Programming, Tokyo, Japan, September 19-21, 2011, pp. 385-391, ACM, 2011.
  5. Akimasa Morihata, Kiminori Matsuzaki:
    A Practical Tree Contraction Algorithm for Parallel Skeletons on Trees of Unbounded Degree.
    In: Proceedings of the International Conference on Computational Science, ICCS 2011, Nanyang Technological University, Singapore 01-03 June 2011, Procedia Computer Science, Vol. 4, pp. 7-16, Elsevier, 2011.
  6. 森畑明昌, 松崎公紀, 武市正人:
    領域限定言語に基づく最適経路問合せ (Optimal Path Querying based on a Domain-Specific Language).
    情報処理学会論文誌 プログラミング, Vol. 4, No. 2, pp. 1-18, 2011.
  7. 森畑明昌:
    先読み付き正規表現の効率の良いマッチング.
    In: 第13回プログラミングおよびプログラミング言語ワークショップ論文集, pp. 48-59, 2011.
  8. 高橋和将, 森畑明昌, 上野雄大, 大堀淳:
    生存区間を変数名とする中間表現の実装と,それに基づく最適化.
    In: 第13回プログラミングおよびプログラミング言語ワークショップ論文集, pp. 16-30, 2011.
  9. 松島勇介, 上野雄大, 森畑明昌, 大堀淳:
    宣言的記述からの関数型言語によるゲームプログラムの導出.
    In: 第13回プログラミングおよびプログラミング言語ワークショップ論文集, pp. 193-207, 2011.
  10. Akimasa Morihata:
    A Short Cut to Optimal Sequences.
    New Generation Computing, Vol. 29, No. 1, pp. 31-59, 2011.
  11. From Parametric Polymorphism to Balanced Trees for Parallel Programming.
    Presented at: 4th DIKU-IST Joint Workshop on Foundations of Software, Tokyo, Japan, 2011.
2010
  1. 森畑明昌:
    運算手法によるアルゴリズムの自動構成に関する研究 (<連載>研究会推薦博士論文速報).
    情報処理, Vol. 51, No. 10, p. 1363, 2010.
  2. Shin-Cheng Mu, Yu-Han Lyu, Akimasa Morihata:
    Constructing Datatype-Generic Fully Polynomial-Time Approximation Schemes Using Generalised Thinning.
    In: Proceedings of the 6th ACM SIGPLAN Workshop on Generic Programming, Baltimore, Maryland, USA, Sep. 26th, 2010, pp. 97-108, ACM, 2010.
  3. 森畑明昌:
    効率の良い最適経路問合せシステムの実現.
    In: 日本ソフトウェア科学会第27回大会講演論文集, 5A-3, 2010.
  4. Akimasa Morihata, Kiminori Matsuzaki:
    Automatic Parallelization of Recursive Functions using Quantifier Elimination.
    In: Functional and Logic Programming, 10th International Symposium, FLOPS 2010, Sendai, Japan, April 19-21, 2010, Proceedings, Lecture Notes in Computer Science, Vol. 6009, pp. 321-336, Springer, 2010.
  5. Parallelizing Recursive Functions with Accumulations.
    Presented at: 4th International Workshop on Bidirectional Transformation in Architecture-Based Component Composition, Palace Hotel Hakone, Japan, 2010.
  6. 森畑明昌:
    累積変数をもつ木変換プログラムの並列木縮約に基づく並列計算.
    In: 第12回プログラミングおよびプログラミング言語ワークショップ論文集, pp. 229-243, 2010.
2009
  1. Akimasa Morihata:
    A Short Cut to Optimal Sequences.
    In: Programming Languages and Systems, 7th Asian Symposium, APLAS 2009, Seoul, Korea, December 14-16, 2009, Proceedings, Lecture Notes in Computer Science, Vol. 5904, pp. 63-78, Springer, 2009.
  2. 森畑明昌, 松崎公紀:
    複雑なリダクションループの限定記号除去に基づいた自動並列化.
    In: 日本ソフトウェア科学会第26回大会講演論文集, 1C-1, 2009.
  3. Akimasa Morihata:
    Solving Maximum Weighted-sum Problems for Free.
    Technical Report METR, 2009-20, Department of Mathematical Informatics, University of Tokyo, 2009.
  4. The Third Homomorphism Theorem on Trees: Upward & Downward Leads to Divide-and-Conquer.
    Presented at: 6th Asian Workshop on Foundation of Software, National Institute of Informatics, Japan, 2009.
  5. 森畑明昌, 松崎公紀, 胡振江, 武市正人:
    並列プログラムの候補生成と適合性検査による並列化 (Program Parallelization by Candidate Generation and Conformity Testing).
    情報処理学会論文誌 プログラミング, Vol. 2, No. 2, pp. 132-143, 2009.
  6. Akimasa Morihata:
    Calculational Approach to Automatic Algorithm Construction.
    PhD thesis, Department of Mathematical Informatics, Graduate School of Information Science and Technology, University of Tokyo, 2009.
  7. 森畑明昌, 胡振江, 武市正人:
    動的計画法アルゴリズムを自己導出する結合子ライブラリ.
    In: 第11回プログラミングおよびプログラミング言語ワークショップ論文集, pp. 57-71, 2009.
  8. Akimasa Morihata, Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi:
    The Third Homomorphism Theorem on Trees: Upward & Downward Leads to Divide-and-Conquer.
    In: POPL'09: Proceedings of the 36th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Savannah, GA, USA, January 21-23, 2009, pp. 177-185, ACM, 2009.
  9. Write It Recursively: A Generic Framework for Optimal Path Queries.
    Presented at: 2nd International Workshop on Bidirectional Transformation in Architecture-Based Component Composition, Shonan Village Center, Japan, 2009.
2008
  1. Akimasa Morihata, Kiminori Matsuzaki, Masato Takeichi:
    Write It Recursively: A Generic Framework for Optimal Path Queries.
    In: ICFP'08: Proceedings of the 2008 ACM SIGPLAN International Conference on Functional Programming, Sept. 22-24, 2008, Victoria, BC, Canada, pp. 169-178, ACM, 2008.
  2. Akimasa Morihata, Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi:
    The Third Homomorphism Theorem on Trees: Upward & Downward Leads to Divide-and-Conquer.
    In: 日本ソフトウェア科学会第25回大会講演論文集, 1A-3, 2008.
  3. Kiminori Matsuzaki, Akimasa Morihata:
    Balanced Ternary-Tree Representation of Binary Trees and Balancing Algorithms.
    Technical Report METR, 2008-30, Department of Mathematical Informatics, University of Tokyo, 2008.
  4. Akimasa Morihata, Kiminori Matsuzaki:
    A Parallel Tree Contraction Algorithm for Non-Binary Trees.
    Technical Report METR, 2008-27, Department of Mathematical Informatics, University of Tokyo, 2008.
  5. 森畑明昌, 松崎公紀, 胡振江, 武市正人:
    仕様記述言語に基づく最適経路問題のアルゴリズムの導出.
    In: 第10回プログラミングおよびプログラミング言語ワークショップ論文集, pp. 96-110, 2008.
  6. A Quantifier-Elimination-Based Method for Parallelization.
    Presented at: 29th TRS meeting, University of Tokyo, Japan, 2008.
2007
  1. Akimasa Morihata, Kiminori Matsuzaki, Zhenjiang Hu, and Masato Takeichi:
    Calculus of Minimals: Deriving Dynamic-Programming Algorithms based on Preservation of Monotonicity.
    Technical Report METR, 2007-61, Department of Mathematical Informatics, University of Tokyo, 2007.
  2. A Language for Optimal Path Queries.
    Presented at: 3rd DIKU-IST Joint Workshop on Foundations of Software, Roskilde, Denmark, 2007.
  3. Kiminori Matsuzaki, Akimasa Morihata, Zhenjiang Hu, Masato Takeichi:
    Associativity for Parallel Tree Computation.
    In: 日本ソフトウェア科学会第24回大会講演論文集, 5B-1, 2007.
  4. Dongxi Liu, Keisuke Nakano, Yasushi Hayashi, Zhenjiang Hu, Masato Takeichi, Akimasa Morihata, Yingfei Xiong:
    Bi-X Core: A General-Purpose Bidirectional Transformation Language.
    In: 日本ソフトウェア科学会第24回大会大会講演論文集, 2C-3, 2007.
  5. A New Calculational Law for Combinatorial Optimization Problems.
    Presented at: IFIP working group 2.1 63rd meeting, Hearton Hotel Kyoto, Japan, 2007.
  6. The Necessary and Sufficient Condition for Parallel Tree Reductions.
    Presented at: Workshop on Parallelism Oblivious Programming, University of Tokyo, Japan, 2007.
  7. Kazutaka Morita, Akimasa Morihata, Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi:
    Automatic Inversion Generates Divide-and-Conquer Parallel Programs.
    In: PLDI'07: Proceedings of the ACM SIGPLAN 2007 Conference on Programming Language Design and Implementation, San Diego, California, USA, June 11-13, 2007, pp. 144-155, ACM, 2007.
  8. 森畑明昌, 胡振江, 武市正人:
    プログラム運算によるグラフアルゴリズムの導出.
    In: 第9回プログラミングおよびプログラミング言語ワークショップ論文集, pp. 201-215, 2007.
2006
  1. 森田和孝, 森畑明昌, 胡振江, 武市正人:
    弱逆関数の自動導出によるプログラムの並列化.
    In: 日本ソフトウェア科学会第23回大会講演論文集, 5B-2, 2006.
  2. 中野圭介, 森畑明昌, 胡振江, 武市正人:
    双方向変換に基づくウェブページ更新機構.
    In: 日本ソフトウェア科学会第23回大会講演論文集, 4B-3, 2006.
  3. Akimasa Morihata, Kazuhiko Kakehi, Zhenjiang Hu, Masato Takeichi:
    Swapping Argument and Results of Recursive Functions.
    In: Mathematics of Program Construction, 8th International Conference, MPC 2006, Kuressaare, Estonia, July 3-5, 2006, Proceedings, Lecture Notes in Computer Science, Vol. 4014, pp. 379-396, Springer, 2006.
  4. Weak Inversion for Parallelization.
    Presented at: 2nd DIKU-IST Joint Workshop on Foundations of Software, Shonan Village Center, Japan, 2006.
  5. Swapping Argument and Results of Recursive Functions.
    Presented at: 第8回プログラミングおよびプログラミング言語ワークショップ, 琵琶湖グランドホテル, 2006. ショートプレゼンテーション.
  6. Using Constructive Galois Connections to Derive Parallel Programs.
    Presented at: Informal Workshop on Skeletal Parallel Programming, University of Tokyo, Japan, 2006.
  7. Akimasa Morihata:
    Relationship Between Arguments and Results of Recursive Functions.
    Master's thesis, Department of Mathematical Informatics, the University of Tokyo, 2006.
2005
  1. Swapping Argument and Results of Recursive Functions.
    Presented at: Fourth Workshop on Programmable Structured Documents, University of Tokyo, Japan, 2005.
  2. Akimasa Morihata, Kazuhiko Kakehi, Zhenjiang Hu, Masato Takeichi:
    IO Swapping Leads You There and Back Again (Extended Abstract).
    In: Proceedings of the 7th GPCE Young Researchers Workshop, pp. 7-13, 2005.
  3. IO Swapping Leads You There and Back Again.
    Presented at: 1st DIKU-IST Joint Workshop on Foundations of Software, Copenhagen, Denmark, 2005.
  4. Kazuhiko Kakehi, Kiminori Matsuzaki, Akimasa Morihata, Kento Emoto, Zhenjiang Hu:
    Parallel Dynamic Programming using Data-Parallel Skeletons.
    In: 日本ソフトウェア科学会第22回大会講演論文集, 4B-1, 2005.
  5. 森畑明昌, 筧一彦, 胡振江, 武市正人:
    効率的な累積なし関数表現.
    In: 第7回プログラミングおよびプログラミング言語ワークショップ論文集, pp. 74-86, 2005.
  6. Akimasa Morihata, Kazuhiko Kakehi, Zhenjiang Hu, Masato Takeichi:
    Reversing Iterations: IO Swapping Leads You There and Back Again.
    Technical Report METR, 2005-11, Department of Mathematical Informatics, University of Tokyo, 2005.
2004
  1. 森畑明昌, 筧一彦, 胡振江, 武市正人:
    属性文法上のShortcut Deforestation.
    In: 日本ソフトウェア科学会第21回大会講演論文集, 5C-1, 2004.
  2. 森畑明昌:
    モデル検査技術を用いたループ内不要再計算の自動検出.
    卒業論文, 東京大学工学部計数工学科, 2004.