お知らせ 2023年度・2024年度 学生員 会費割引キャンペーン実施中です
お知らせ 技術研究報告と和文論文誌Cの同時投稿施策(掲載料1割引き)について
お知らせ 電子情報通信学会における研究会開催について
お知らせ NEW 参加費の返金について
電子情報通信学会 研究会発表申込システム
講演論文 詳細
技報閲覧サービス
[ログイン]
技報アーカイブ
 トップに戻る 前のページに戻る   [Japanese] / [English] 

講演抄録/キーワード
講演名 2018-01-25 14:20
定理証明技術を用いたソースコードの補完手法の提案
小池遼平早大)・小野康一日本IBM)・深澤良彰早大KBSE2017-33
抄録 (和) ソフトウェア開発を効率的に行うための技術の1つにコード補完がある.コード補完とは記述中のソースコードの不足部分を自動的に補完する技術であり,ユーザは提示された補完候補のうちの1つを選択することで効率よくコーディングを行うことができる.しかし既存の手法では,正しくないコードの候補も含めて提示されるため,ユーザが誤ったコードを選択する可能性が発生する.この場合,ユーザはコード全体に修正を加えるか,補完された部分を再び候補の中から選択し直すという手間を強いられることになる.そこで本研究では定理証明技術を組み込んだコード補完手法を提案する.提案する手法では実装途中のソースコードに加え,実装途中のコードに与えられた事前条件/事後条件を考慮したコード検索を行い,定理証明を用いた検証により候補の絞り込みを行う.これにより,与えられた仕様を充足するコードに限定して推薦を行うことができるため,スムーズなコーディングを行えるとともに誤ったコードを選択するリスクを軽減することができる. 
(英) Code completion is one of the techniques for making software development efficient. Code completion can complete the missing part of the source code automatically, so users can implement by selecting one of the recommended candidates. However, when users work on environment with existing code completion techniques, they might select incorrect candidates, since the recommendation would include incorrect codes. In this case, they have to modify the code or to select another one from the candidates. In this paper, we propose a new code completion method incorporating theorem proving technique. In this method, code search is performed in consideration of pre-condition / post-condition given as the specification of the code, and the theorem proving is used to narrow down the candidates by verifying the specification. By using this method, users can get the correct code that satisfies a given specification, so users can develop software smoothly and reduce the risk of selecting incorrect codes.
キーワード (和) コード補完 / コード断片 / JMLアノテーション / 定理証明 / / / /  
(英) code completion / code snippet / JML annotation / automated theorem proving / / / /  
文献情報 信学技報, vol. 117, no. 414, KBSE2017-33, pp. 7-11, 2018年1月.
資料番号 KBSE2017-33 
発行日 2018-01-18 (KBSE) 
ISSN Print edition: ISSN 0913-5685    Online edition: ISSN 2432-6380
著作権に
ついて
技術研究報告に掲載された論文の著作権は電子情報通信学会に帰属します.(許諾番号:10GA0019/12GB0052/13GB0056/17GB0034/18GB0034)
PDFダウンロード KBSE2017-33

研究会情報
研究会 KBSE  
開催期間 2018-01-25 - 2018-01-26 
開催地(和) 機械振興会館 
開催地(英) Kikai-Shinko-Kaikan Bldg. 
テーマ(和) 一般 
テーマ(英)  
講演論文情報の詳細
申込み研究会 KBSE 
会議コード 2018-01-KBSE 
本文の言語 日本語 
タイトル(和) 定理証明技術を用いたソースコードの補完手法の提案 
サブタイトル(和)  
タイトル(英) A Code Completion Method Using Automated Theorem Proving 
サブタイトル(英)  
キーワード(1)(和/英) コード補完 / code completion  
キーワード(2)(和/英) コード断片 / code snippet  
キーワード(3)(和/英) JMLアノテーション / JML annotation  
キーワード(4)(和/英) 定理証明 / automated theorem proving  
キーワード(5)(和/英) /  
キーワード(6)(和/英) /  
キーワード(7)(和/英) /  
キーワード(8)(和/英) /  
第1著者 氏名(和/英/ヨミ) 小池 遼平 / Ryohei Koike / コイケ リョウヘイ
第1著者 所属(和/英) 早稲田大学 (略称: 早大)
Waseda University (略称: Waseda Univ.)
第2著者 氏名(和/英/ヨミ) 小野 康一 / Kouichi Ono / オノ コウイチ
第2著者 所属(和/英) 日本アイ・ビー・エム (略称: 日本IBM)
IBM Japan (略称: IBM Japan)
第3著者 氏名(和/英/ヨミ) 深澤 良彰 / Yoshiaki Fukazawa / フカザワ ヨシアキ
第3著者 所属(和/英) 早稲田大学 (略称: 早大)
Waseda University (略称: Waseda Univ.)
第4著者 氏名(和/英/ヨミ) / /
第4著者 所属(和/英) (略称: )
(略称: )
第5著者 氏名(和/英/ヨミ) / /
第5著者 所属(和/英) (略称: )
(略称: )
第6著者 氏名(和/英/ヨミ) / /
第6著者 所属(和/英) (略称: )
(略称: )
第7著者 氏名(和/英/ヨミ) / /
第7著者 所属(和/英) (略称: )
(略称: )
第8著者 氏名(和/英/ヨミ) / /
第8著者 所属(和/英) (略称: )
(略称: )
第9著者 氏名(和/英/ヨミ) / /
第9著者 所属(和/英) (略称: )
(略称: )
第10著者 氏名(和/英/ヨミ) / /
第10著者 所属(和/英) (略称: )
(略称: )
第11著者 氏名(和/英/ヨミ) / /
第11著者 所属(和/英) (略称: )
(略称: )
第12著者 氏名(和/英/ヨミ) / /
第12著者 所属(和/英) (略称: )
(略称: )
第13著者 氏名(和/英/ヨミ) / /
第13著者 所属(和/英) (略称: )
(略称: )
第14著者 氏名(和/英/ヨミ) / /
第14著者 所属(和/英) (略称: )
(略称: )
第15著者 氏名(和/英/ヨミ) / /
第15著者 所属(和/英) (略称: )
(略称: )
第16著者 氏名(和/英/ヨミ) / /
第16著者 所属(和/英) (略称: )
(略称: )
第17著者 氏名(和/英/ヨミ) / /
第17著者 所属(和/英) (略称: )
(略称: )
第18著者 氏名(和/英/ヨミ) / /
第18著者 所属(和/英) (略称: )
(略称: )
第19著者 氏名(和/英/ヨミ) / /
第19著者 所属(和/英) (略称: )
(略称: )
第20著者 氏名(和/英/ヨミ) / /
第20著者 所属(和/英) (略称: )
(略称: )
講演者 第1著者 
発表日時 2018-01-25 14:20:00 
発表時間 45分 
申込先研究会 KBSE 
資料番号 KBSE2017-33 
巻番号(vol) vol.117 
号番号(no) no.414 
ページ範囲 pp.7-11 
ページ数
発行日 2018-01-18 (KBSE) 


[研究会発表申込システムのトップページに戻る]

[電子情報通信学会ホームページ]


IEICE / 電子情報通信学会