Skip to main content
QUICK REVIEW

[論文レビュー] The Dynamic Geometry of Interaction Machine: A Call-by-Need Graph Rewriter

Koko Muroya, Dan R. Ghica|arXiv (Cornell University)|Jan 1, 2017
Logic, programming, and type systems参考文献 20被引用数 4
ひとこと要約

本稿では、動的幾何学的相互作用マシン(DGoIM)を紹介する。これは、λ計算におけるコール・バイ・ネード評価を効率的に実装するための、新しい抽象機械である。DGoIMは、トークン伝達とグラフ書き換えをインタリーブさせることで、再評価を避けるために訪問された部分グラフを書き換えることで、時間的効率性を達成しながらも、空間的効率性を維持する。本手法は、アッカッチョリの抽象機械の分類法において「効率的」として形式的に証明されている。

ABSTRACT

Girard's Geometry of Interaction (GoI), a semantics designed for linear logic proofs, has been also successfully applied to programming languages. One way is to use abstract machines that pass a token in a fixed graph, along a path indicated by the GoI. These token-passing abstract machines are space efficient, because they handle duplicated computation by repeating the same moves of a token on the fixed graph. Although they can be adapted to obtain sound models with regard to the equational theories of various evaluation strategies for the lambda calculus, it can be at the expense of significant time costs. In this paper we show a token-passing abstract machine that can implement evaluation strategies for the lambda calculus, with certified time efficiency. Our abstract machine, called the Dynamic GoI Machine (DGoIM), rewrites the graph to avoid replicating computation, using the token to find the redexes. The flexibility of interleaving token transitions and graph rewriting allows the DGoIM to balance the trade-off of space and time costs. This paper shows that the DGoIM can implement call-by-need evaluation for the lambda calculus by using a strategy of interleaving token passing with as much graph rewriting as possible. Our quantitative analysis confirms that the DGoIM with this strategy of interleaving the two kinds of possible operations on graphs can be classified as “efficient” following Accattoli’s taxonomy of abstract machines.

研究の動機と目的

  • 本稿の目的は、従来のトークン伝達抽象機械が非コール・バイ・ネーム評価戦略において非効率であるという点を解決することにある。
  • 空間効率的なGoI意味論と、コール・バイ・ネードのような時間効率的な評価戦略との間のギャップを埋めることを目的としている。
  • トークン移動とグラフ書き換えの制御されたインタリーブによって、空間コストと時間コストのバランスを取れる柔軟な抽象機械の設計が目的である。
  • 本研究の目的は、GoIの原則に基づいて、形式的に検証された、時間的に効率的なコール・バイ・ネード評価の実装を提供することにある。

提案手法

  • DGoIMは、2種類の遷移(トークン伝達とグラフ書き換え)を持つ状態遷移系として定義される。
  • トークンの移動は、グラフ内をたどる経路に従い、これによりレデックスの検出が可能になる。
  • レデックスが検出されると、グラフ書き換えがトリガーされ、訪問された部分グラフが評価結果を表すように書き換えられ、再計算を回避する。
  • 本機械は「書き換え優先」戦略を採用しており、時間的効率性を高めるために、純粋なトークン伝達よりも書き換えを優先する。
  • 弱シミュレーションを用いて、DGoIMの遷移を標準抽象機械(SAM)の計算ステップに関連づけ、時間コストの分析を可能にしている。
  • 分析には、アッカッチョリの抽象機械の定量的分析手法が用いられ、DGoIMの洗練された遷移系に適応されている。

実験結果

リサーチクエスチョン

  • RQ1コール・バイ・ネード評価を効率的に行える、GoI風の抽象機械を設計することは可能か? これにより、繰り返しのトークン伝達に伴う時間的コストを回避できるか?
  • RQ2グラフ書き換えとトークン伝達を、空間的効率性と時間的効率性のバランスを保ちながら統合する方法は何か?
  • RQ3このような機械が、アッカッチョリの分類基準のような確立された分類基準のもとで、形式的に時間的効率性を証明できるか?
  • RQ4DGoIMにおける時間コストの主な要因は何か? それらは入力サイズや計算ステップ数の観点から、有界にできるか?

主な発見

  • DGoIMは、再評価を避けるためにトークンが訪問した部分グラフを書き換えることで、コール・バイ・ネード評価を正しく実装する。
  • DGoIM実行の総時間コストは、O((|t0| + C) · (|r|b + D)) で有界である。ここで |t0| は初期項のサイズ、|r|b はβ簡約ステップ数を表す。
  • DGoIMの遷移回数は、O(|t0| · |r|b) で有界であり、入力サイズと計算複雑度に応じて効率的にスケーリングされることを示している。
  • 主な時間コスト要因は、!-ボックスの削除とコピーであり、それらは、それらが表す値のサイズに線形に依存する。
  • DGoIMは、アッカッチョリの分類法において「効率的」として形式的に証明されている。なぜなら、その時間コストが入力サイズと計算ステップ数の多項式的関数で抑えられているからである。
  • DGoIMと標準抽象機械の間の弱シミュレーションにより、β簡約や代入といった各計算タスクが、有界なオーバーヘッドで正しくエミュレートされていることが保証されている。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。