論文の概要: A new perspective on the competent programmer hypothesis through the
reproduction of bugs with repeated mutations
- arxiv url: http://arxiv.org/abs/2104.02517v2
- Date: Tue, 16 May 2023 02:15:29 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-24 16:00:56.444853
- Title: A new perspective on the competent programmer hypothesis through the
reproduction of bugs with repeated mutations
- Title(参考訳): 反復変異のあるバグの再現を通した有能なプログラマ仮説の新しい展望
- Authors: Zaheed Ahmed, Eike Stein, Steffen Herbold, Fabian Trautsch, Jens
Grabowski
- Abstract要約: 有能なプログラマの仮説では、ほとんどのプログラマは正しいソースコードやほぼ正しいソースコードを作成する能力を持っている。
私たちは、突然変異テストとバグの間に直接リンクがあるかどうかを理解するために、突然変異の連鎖を通じて現実世界のバグを再現しようとします。
- 参考スコア(独自算出の注目度): 5.634791333443662
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The competent programmer hypothesis states that most programmers are
competent enough to create correct or almost correct source code. Because this
implies that bugs should usually manifest through small variations of the
correct code, the competent programmer hypothesis is one of the fundamental
assumptions of mutation testing. Unfortunately, it is still unclear if the
competent programmer hypothesis holds and past research presents contradictory
claims. Within this article, we provide a new perspective on the competent
programmer hypothesis and its relation to mutation testing. We try to re-create
real-world bugs through chains of mutations to understand if there is a direct
link between mutation testing and bugs. The lengths of these paths help us to
understand if the source code is really almost correct, or if large variations
are required. Our results indicate that while the competent programmer
hypothesis seems to be true, mutation testing is missing important operators to
generate representative real-world bugs.
- Abstract(参考訳): 有能なプログラマ仮説では、ほとんどのプログラマは正しいソースコードやほぼ正しいソースコードを作成する能力を持っている。
これは、バグは通常、正しいコードの小さなバリエーションを通して現れるべきであることを意味しているため、有能なプログラマ仮説は突然変異テストの基本的な仮定の1つである。
残念ながら、有能なプログラマ仮説が成立し、過去の研究が矛盾する主張を提示するかどうかはまだ不明である。
この記事では、有能なプログラマ仮説とその突然変異テストとの関連について、新しい視点を示します。
私たちは、突然変異テストとバグの間に直接リンクがあるかどうかを理解するために、突然変異の連鎖を通じて現実世界のバグを再現しようとします。
これらのパスの長さは、ソースコードが本当にほぼ正しいのか、大きなバリエーションが必要なのかを理解するのに役立ちます。
結果は、有能なプログラマ仮説は正しいように見えるが、突然変異テストは、典型的な現実世界のバグを生成する重要なオペレーターを欠いていることを示している。
関連論文リスト
- Investigating the Transferability of Code Repair for Low-Resource Programming Languages [57.62712191540067]
大規模言語モデル(LLM)は、コード生成タスクにおいて顕著なパフォーマンスを示している。
近年の作業は、連鎖推論や蒸留といった現代的な技術を統合することで、コード修復のプロセスを強化している。
高低資源言語と低低資源言語の両方でコード修復を蒸留する利点について検討する。
論文 参考訳(メタデータ) (2024-06-21T05:05:39Z) - A Theoretical Understanding of Self-Correction through In-context Alignment [51.622068973630796]
大規模言語モデル(LLM)は自己補正によって純粋に能力を向上させることができる。
LLMが比較的正確な自己評価を報酬として与える場合、文脈内応答を補充できることを示す。
これらの知見に触発されて,LLMジェイルブレイクに対する防御などの自己補正の応用についても解説した。
論文 参考訳(メタデータ) (2024-05-28T22:33:02Z) - What is a "bug"? On subjectivity, epistemic power, and implications for
software research [8.116831482130555]
バグ」は少なくとも1870年代からの工学的「欠陥」の口語である。
現代のソフトウェア指向の定義のほとんどは、開発者が意図したものと、プログラムが実際に何をするかを区別するものである。
バグをファインディングするのは簡単だ" と最初に言うのは,“バグパターンはしばしばエラーとなるコード”だ。
論文 参考訳(メタデータ) (2024-02-13T01:52:42Z) - Cognitive Dissonance: Why Do Language Model Outputs Disagree with
Internal Representations of Truthfulness? [53.98071556805525]
ニューラルネットワークモデル(LM)は、事実文の真偽を評価するために用いられる。
それらは、文の確率を問い合わせたり、真理の表現を内部で探したりすることができる。
過去の研究によると、これらの2つの手順は時折不一致であり、プローブはLM出力よりも正確である。
この結果、一部の研究者は、LMが非協力的なコミュニケーション意図を「十分」あるいは他の方法でコード化していると結論付けている。
論文 参考訳(メタデータ) (2023-11-27T18:59:14Z) - Automated Bug Generation in the era of Large Language Models [6.0770779409377775]
BugFarmは任意のコードを複数の複雑なバグに変換する。
BUGFARMが生成した1.9万以上の変異株から435k以上のバグを総合的に評価する。
論文 参考訳(メタデータ) (2023-10-03T20:01:51Z) - Bugsplainer: Leveraging Code Structures to Explain Software Bugs with
Neural Machine Translation [4.519754139322585]
Bugsplainerは、バグ修正コミットの大規模なコーパスから学ぶことによって、ソフトウェアバグの自然言語説明を生成する。
Bugsplainerはバグを推論するためにコード構造を利用し、テキスト生成モデルの微調整バージョンであるCodeT5を採用している。
論文 参考訳(メタデータ) (2023-08-23T17:35:16Z) - Generation Probabilities Are Not Enough: Uncertainty Highlighting in AI Code Completions [54.55334589363247]
本研究では,不確実性に関する情報を伝達することで,プログラマがより迅速かつ正確にコードを生成することができるかどうかを検討する。
トークンのハイライトは、編集される可能性が最も高いので、タスクの完了が早くなり、よりターゲットを絞った編集が可能になることがわかりました。
論文 参考訳(メタデータ) (2023-02-14T18:43:34Z) - Explaining Software Bugs Leveraging Code Structures in Neural Machine
Translation [5.079750706023254]
Bugsplainerは、バグ修正コミットの大規模なコーパスから学ぶことによって、ソフトウェアバグの自然言語説明を生成する。
3つのパフォーマンス指標を用いて評価したところ、BugsplainerはGoogleの標準に従って理解しやすく良い説明を生成できることがわかった。
また、Bugsplainerによる説明がベースラインよりも正確で、より正確で、より有用であることが判明した、20人の参加者を対象にした開発者スタディも実施しました。
論文 参考訳(メタデータ) (2022-12-08T22:19:45Z) - Using Developer Discussions to Guide Fixing Bugs in Software [51.00904399653609]
我々は,タスク実行前に利用可能であり,また自然発生しているバグレポートの議論を,開発者による追加情報の必要性を回避して利用することを提案する。
このような議論から派生したさまざまな自然言語コンテキストがバグ修正に役立ち、オラクルのバグ修正コミットに対応するコミットメッセージの使用よりもパフォーマンスの向上につながることを実証する。
論文 参考訳(メタデータ) (2022-11-11T16:37:33Z) - DeepMutants: Training neural bug detectors with contextual mutations [0.799536002595393]
学習ベースのバグ検知器は、自然なヒントを利用して、大きなコードベースのバグを見つけることを約束する。
それでも、既存のテクニックは、現実的なバグを提示するとパフォーマンスが低下する傾向があります。
本稿では,自然かつ現実的な欠陥を動的にコードに注入する新しい文脈突然変異演算子を提案する。
論文 参考訳(メタデータ) (2021-07-14T12:45:48Z) - Break-It-Fix-It: Unsupervised Learning for Program Repair [90.55497679266442]
我々は2つの重要なアイデアを持つ新しいトレーニング手法であるBreak-It-Fix-It (BIFI)を提案する。
批判者は、実際の悪い入力でフィクスダーの出力をチェックし、トレーニングデータに良い(固定された)出力を追加する。
これらのアイデアに基づいて、よりペア化されたデータを生成するために、ブレーカとフィクスチャを同時に使用しながら、繰り返し更新する。
BIFIは既存のメソッドより優れており、GitHub-Pythonで90.5%、DeepFixで71.7%の修正精度がある。
論文 参考訳(メタデータ) (2021-06-11T20:31:04Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。