プログラム合成

Scala UDF を SQL に変換する技術

論文メモ。今日はプログラム合成を用いてプログラムを変換する手法について。 論文 UDF to SQL Translation through Compositional Lazy Inductive Synthesis OOPSLA2021 https://www.cs.utexas.edu/~isil/clis.pdf (preprint) 論文の概要 データベースシス…

【Z3ソルバー】関数の define と declare

Z3 ソルバーについてのメモ。 主なトピックは SMT-LIB の define と declare について。 Z3 と SMT-LIB Z3 は言わずと知れた SMT ソルバーである。オープンソースであり、Github のページにインストール手順も載っている。この手順の通りにやれば(少なくと…

Finite Tree Automaton とは

最近、プログラム合成の研究で Finite Tree Automaton (FTA、有限木オートマトン) を使った手法がいくつか見られる。このオートマトンはプログラムの集合を簡素に表現するために用いられる。プログラムの集合を簡素に表現する手法として、ちょっと前までは V…

研究コミュニティ SyGuS について

今日はプログラム合成のコミュニティ SyGuS についての紹介。例によって日本で自分くらいしか興味がなさそうなトピック。そのうちきっと国内でも人気が高まるはず。。。 SyGuS とは SyGuS はプログラム合成についての有力な研究コミュニティである。プログラ…

ソフトウェアコンポーネントの挙動をモデリングする手法

明けましておめでとうございます。 年末年始にいろいろ論文読んだので簡単にメモしてゆく。 タイトル Modeling Black-Box Components with Probabilistic Synthesis GPCE 2020 [2010.04811] Modeling Black-Box Components with Probabilistic Synthesis htt…

リストや木構造に対する再帰的な操作の合成

けっこう有名だけど、ちゃんと読んだことなかった論文。手法 というプログラム合成の手法。 タイトル Synthesizing Data Structure Transformations from Input-Output Examples PLDI2015 Synthesizing data structure transformations from input-output ex…

論文:機械学習を用いたボトムアップなプログラム合成

タイトル BUSTLE: Bottom-up program-Synthesis Through Learning-guided Exploration arXiv, Submitted on 28 Jul 2020 [2007.14381] BUSTLE: Bottom-Up Program Synthesis Through Learning-Guided Exploration 手法の入出力 手法の入力 入出力例の集合 論…

論文:ウェブページからデータを抽出するプログラムの合成

プログラムを自動生成する研究、とくに入出力例を用いたプログラム合成 (Programming by Example) に興味があるので、論文を読んでメモとして残してゆく。以下、水色のテキストは私の主観的なコメント。 タイトル Web Data Extraction using Hybrid Program …