• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to project page

2018 Fiscal Year Annual Research Report

A reversible debugging model for real-time concurrent programs

Research Project

Project/Area Number 17H01722
Research InstitutionNagoya University

Principal Investigator

結縁 祥治  名古屋大学, 情報学研究科, 教授 (70230612)

Co-Investigator(Kenkyū-buntansha) 西田 直樹  名古屋大学, 情報学研究科, 准教授 (00397449)
関 浩之  名古屋大学, 情報学研究科, 教授 (80196948)
中澤 巧爾  名古屋大学, 情報学研究科, 准教授 (80362581)
Project Period (FY) 2017-04-01 – 2021-03-31
Keywords逆計算モデル / バックトラック逆計算 / 構造操作意味規則 / 因果無矛盾性 / 実時間プログラム
Outline of Annual Research Achievements

本年度は、並行プログラミング言語に逆計算機構を導入する手法および実時間を考慮したプログラムカリキュラスの提案を中心にして研究を進めた。前者については、バックトラックに基づく逆計算機構をプログラミング言語を導入する計算について、欧州Cost Action(IC1405)プロジェクトのメンバーと共同して研究を実施した(結縁)。ここでは、構造的操作意味定義に基づく手続き、関数定義、ループ構造など、実用的なプログラムに対して、アノテーションを加えてバックトラックに基づく逆計算を定義した。後者については、TimedRCCSを提案した。時間についてのプログラムカリキュラスに関する研究は、既存研究のRCCSを拡張する形で実施した(結縁)。さらに、CCSKの時間拡張についても研究を行った。その他に、逆計算の操作意味定義に関する拡張(結縁)、関数型並行分散プログラミング言語Erlangの逆計算意味(西田)について研究をすすめた。さらに、逆計算デバッグのための情報圧縮技術についても研究を実施した(関)。
逆計算については、バックトラックに基づいて情報を蓄積する方法については単一のスタックにもとづいて巻き戻す方法について検討し、時間については時間の経過が持つ特性を活かした意味論を展開することを試みた。後者については、今年度の研究ではプログラムの並行構造にもとづく逆計算情報のデータ蓄積方法が複雑であり、並行構造の反映には限界があることがわかった。合成可能性という観点から、より扱いやすいモデルの提案が必要であることがわかった。

Current Status of Research Progress
Current Status of Research Progress

2: Research has progressed on the whole more than it was originally planned.

Reason

本年度は、より技術的な内容について検討を進めた。逆計算を並行プログラミング言語、時間を考慮した体系への拡張について知見を得た。逆計算においては、単純に実行した経路を巻き戻すバックトラック型の逆計算に加えて、因果無矛盾性を保存する逆計算を考慮する必要がある。逐次計算において、この両者に違いはないが、並行分散計算機構を持つ場合は、デバッグという観点においては後者の方がより自然である。これは、通信などの同期機構によって分散計算が行われる場合、全体の状態をまとめて状態を正確に定義することが懇談であるという並行分散計算の本質に基づく。また、これらのアイデアに基づくプログラミング言語定義との関係について一定の知見を得た。

Strategy for Future Research Activity

今後は、因果無矛盾性に基づく逆計算機構を研究する。デバッグの観点から、技術的に興味深い点は、因果無矛盾性にもとづくデバッグ機構の定式化である。バックトラックに基づく逆計算では、デバッグが必要になるポイントが明確に定義できない場合がある。例えば、問題のあるスレッドに到達するまでの他のスレッドの実行は多数の組み合わせがあり、要求された性質が成り立たなくなるポイントが明確でない。デバッグの原因となるポイントを詳細に解析するには、バックトラックよりも制約条件を緩めた因果無矛盾性にもとづいて、デバッグポイントを指摘する方が自然である。今後は、因果無矛盾性に基づくデバッグ手法を検討し、並行プログラミングにおいて実際的なモデルを考案する観点から、データを直接的に扱うためのデバッグモデルを考案する。
時間経過を含めた逆計算の意味の定義を研究する過程で得られた知見として、従来Ulidowskiらによって提案されている枠組みを拡張する必要があることが判明したため、順方向の時間経過意味から逆方向計算を導き出すことが可能なクラスの同定に関する研究を実施する。また、時間経過とオートマトンモデルにおけるデータの扱いについての関係を明らかにすることによって、時間経過の逆方向計算のメカニズムを明らかにする。

  • Research Products

    (11 results)

All 2019 2018 Other

All Int'l Joint Research (1 results) Journal Article (7 results) (of which Int'l Joint Research: 4 results,  Peer Reviewed: 7 results,  Open Access: 5 results) Presentation (3 results) (of which Int'l Joint Research: 1 results)

  • [Int'l Joint Research] University of Leicester(英国)

    • Country Name
      UNITED KINGDOM
    • Counterpart Institution
      University of Leicester
  • [Journal Article] On Transforming Narrowing Trees into Regular Tree Grammars Generating Ranges of Substitutions2019

    • Author(s)
      Nishida Naoki、Maeda Yuya
    • Journal Title

      Electronic Proceedings in Theoretical Computer Science

      Volume: 289 Pages: 68~87

    • DOI

      10.4204/EPTCS.289.5

    • Peer Reviewed / Open Access
  • [Journal Article] Reversing Parallel Programs with Blocks and Procedures2018

    • Author(s)
      Hoey James、Ulidowski Irek、Yuen Shoji
    • Journal Title

      Electronic Proceedings in Theoretical Computer Science

      Volume: 276 Pages: 69~86

    • DOI

      10.4204/EPTCS.276.7

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] Reversing Event Structures2018

    • Author(s)
      Ulidowski Irek、Phillips Iain、Yuen Shoji
    • Journal Title

      New Generation Computing

      Volume: 36 Pages: 281~306

    • DOI

      10.1007/s00354-018-0040-8

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] A theory of reversibility for Erlang2018

    • Author(s)
      Lanese Ivan、Nishida Naoki、Palacios Adrian、Vidal German
    • Journal Title

      Journal of Logical and Algebraic Methods in Programming

      Volume: 100 Pages: 71~97

    • DOI

      10.1016/j.jlamp.2018.06.004

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] CauDEr: A Causal-Consistent Reversible Debugger for Erlang2018

    • Author(s)
      Lanese Ivan、Nishida Naoki、Palacios Adrian、Vidal German
    • Journal Title

      Lecture Notes in Computer Science

      Volume: 10818 Pages: 247~263

    • DOI

      10.1007/978-3-319-90686-7_16

    • Peer Reviewed / Int'l Joint Research
  • [Journal Article] Narrowing Trees for Syntactically Deterministic Conditional Term Rewriting Systems2018

    • Author(s)
      Naoki Nishida, Yuya Maeda
    • Journal Title

      LIPIcs

      Volume: 108 Pages: 26:1-26:20

    • DOI

      10.4230/LIPIcs.FSCD.2018.26

    • Peer Reviewed / Open Access
  • [Journal Article] Direct Update of XML Documents with Data Values Compressed by Tree Grammars2018

    • Author(s)
      HASHIMOTO Kenji、TAKAYAMA Ryunosuke、SEKI Hiroyuki
    • Journal Title

      IEICE Transactions on Information and Systems

      Volume: E101.D Pages: 1467~1478

    • DOI

      10.1587/transinf.2017FOP0002

    • Peer Reviewed
  • [Presentation] Graph Compression by Tree Grammars and Direct Evaluation of Regular Path Query,2019

    • Author(s)
      Takeshi Takeda, Kenji Hashimoto and Hiroyuki Seki
    • Organizer
      2019 IEEE 4th International Conference on Computer and Communication Systems (ICCCS 2019)
    • Int'l Joint Research
  • [Presentation] 時間付き可逆プロセス計算2018

    • Author(s)
      山本曉、結縁祥治
    • Organizer
      電子情報通信学会ソフトウェアサイエンス研究会SS2018-5
  • [Presentation] 時間付き可逆プロセス計算の合同性について2018

    • Author(s)
      山本曉、結縁祥治
    • Organizer
      電子情報通信学会ソフトウェアサイエンス研究会SS2018-5

URL: 

Published: 2019-12-27  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi