論文の概要: SAT-Based Extraction of Behavioural Models for Java Libraries with
Collections
- arxiv url: http://arxiv.org/abs/2205.15270v2
- Date: Wed, 8 Nov 2023 11:58:20 GMT
- ステータス: 処理完了
- システム内更新日: 2023-11-09 20:38:59.291587
- Title: SAT-Based Extraction of Behavioural Models for Java Libraries with
Collections
- Title(参考訳): SATによるコレクション付きJavaライブラリの振る舞いモデル抽出
- Authors: Larisa Safina and Simon Bliudze
- Abstract要約: 振る舞いモデルは、ソフトウェア検証、テスト、監視、公開などのための貴重なツールです。
ソフトウェア開発者によって提供されることはめったになく、ソースまたはコンパイルされたコードから抽出されなければならない。
これらのアプローチのほとんどは、コンパイルされたバイトコードの分析に依存します。
我々はJavaソースコードから有限状態マシン(FSM)の形式で振る舞いモデルを取り出して、取得したFSMがソフトウェア開発者によって容易に理解できるようにしたいと思っています。
- 参考スコア(独自算出の注目度): 0.087024326813104
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Behavioural models are a valuable tool for software verification, testing,
monitoring, publishing etc. However, they are rarely provided by the software
developers and have to be extracted either from the source or from the compiled
code. In the context of Java programs, a number of approaches exist for
building behavioural models. Most of these approaches rely on the analysis of
the compiled bytecode. Instead, we are looking to extract behavioural models in
the form of Finite State Machines (FSMs) from the Java source code to ensure
that the obtained FSMs can be easily understood by the software developers and,
if necessary, updated or integrated into the original source code, e.g. in the
form of annotations. Modern software systems are huge, rely on external
libraries and interact with their environment. Hence, extracting useful
behavioural models requires abstraction. In this paper, we present an initial
approach to this problem by focusing on the extraction of FSMs modelling
library APIs. We focus on the analysis of Java code involving the use of
collections. To this end, we encode the operational semantics of collection
operations using patterns of Boolean predicates. These patterns are
instantiated based on the analysis of the source code of API implementation
methods to form an encoding of the possible FSM transitions. A SAT solver is
then used to determine the enabledness conditions (guards) of these
transitions.
- Abstract(参考訳): 振る舞いモデルは、ソフトウェア検証、テスト、監視、公開などのための貴重なツールです。
しかし、ソフトウェア開発者によって提供されることは滅多になく、ソースまたはコンパイルされたコードから抽出しなければならない。
Javaプログラムのコンテキストでは、振る舞いモデルを構築するための多くのアプローチが存在する。
これらのアプローチのほとんどは、コンパイルされたバイトコードの分析に依存します。
代わりに、我々はJavaソースコードから有限状態マシン(FSM)の形式で振る舞いモデルを取り出して、取得したFSMがソフトウェア開発者によって容易に理解され、必要に応じて、アノテーションの形で、元のソースコードに更新または統合されることを保証することを検討している。
現代のソフトウェアシステムは巨大で、外部ライブラリに依存し、環境と対話する。
したがって、有用な振る舞いモデルを抽出するには抽象化が必要です。
本稿では,ライブラリAPIをモデル化するFSMの抽出に着目し,この問題に対する最初のアプローチを提案する。
我々は、コレクションの使用を伴うjavaコードの解析にフォーカスしています。
そこで我々は,Boolean述語パターンを用いて,コレクション操作の操作意味を符号化する。
これらのパターンは、API実装メソッドのソースコードの分析に基づいてインスタンス化され、可能なFSM遷移のエンコーディングを形成する。
SATソルバは、これらの遷移の有効性条件(ガード)を決定するために使用される。
関連論文リスト
- Runtime Verification on Abstract Finite State Models [0.0]
マルチスレッドJavaプログラムの実行から有限状態モデルを抽出する方法を示し、精度特性のランタイム検証を実行する。
本論文の主な貢献は,プロパティ保存抽象モデルのオンラインプロパティチェックを通じて,実行時検証の効率性を示すことである。
論文 参考訳(メタデータ) (2024-06-18T15:32:31Z) - LILO: Learning Interpretable Libraries by Compressing and Documenting Code [71.55208585024198]
LILOは、反復的に合成、圧縮、文書化を行う、ニューロシンボリックなフレームワークである。
LILOは、LLM誘導プログラム合成と、Stitchから自動化された最近のアルゴリズムの進歩を組み合わせたものである。
LILOのシンセサイザーが学習した抽象化を解釈し、デプロイするのを手助けすることで、AutoDocがパフォーマンスを向上させることが分かりました。
論文 参考訳(メタデータ) (2023-10-30T17:55:02Z) - Private-Library-Oriented Code Generation with Large Language Models [52.73999698194344]
本稿では,大規模言語モデル(LLM)をプライベートライブラリのコード生成に活用することに焦点を当てる。
プログラマがプライベートコードを書く過程をエミュレートする新しいフレームワークを提案する。
TorchDataEval、TorchDataComplexEval、MonkeyEval、BeatNumEvalの4つのプライベートライブラリベンチマークを作成しました。
論文 参考訳(メタデータ) (2023-07-28T07:43:13Z) - Guiding Language Models of Code with Global Context using Monitors [17.05416012014561]
コード(LM)の言語モデルは、周囲のコードが十分なコンテキストを提供するときにうまく機能します。
LMはそのようなグローバルな文脈に対する認識が限られ、幻覚に陥る。
そこで我々は,モニタが静的解析を用いて復号を導出する,モニタ誘導復号法(MGD)を提案する。
論文 参考訳(メタデータ) (2023-06-19T08:13:50Z) - CodeTF: One-stop Transformer Library for State-of-the-art Code LLM [72.1638273937025]
我々は、最先端のCode LLMとコードインテリジェンスのためのオープンソースのTransformerベースのライブラリであるCodeTFを紹介する。
我々のライブラリは、事前訓練されたコードLLMモデルと人気のあるコードベンチマークのコレクションをサポートします。
CodeTFが機械学習/生成AIとソフトウェア工学のギャップを埋められることを願っている。
論文 参考訳(メタデータ) (2023-05-31T05:24:48Z) - When Language Model Meets Private Library [25.610036042971043]
実際には、プログラマはプライベートライブラリを使ってコードを書くことが一般的である。
これは、トレーニング中にプライベートAPIを見たことがないため、言語モデルにとっての課題である。
APIRetrieverは有用なAPIを見つけ、APICoderはこれらのAPIを使ってコードを生成する。
論文 参考訳(メタデータ) (2022-10-31T11:42:06Z) - DORE: Document Ordered Relation Extraction based on Generative Framework [56.537386636819626]
本稿では,既存のDocREモデルの根本原因について検討する。
本稿では,モデルが学習しやすく,決定論的な関係行列から記号列と順序列を生成することを提案する。
4つのデータセットに対する実験結果から,提案手法は生成型DocREモデルの性能を向上させることができることが示された。
論文 参考訳(メタデータ) (2022-10-28T11:18:10Z) - AstBERT: Enabling Language Model for Code Understanding with Abstract
Syntax Tree [3.1087379479634927]
抽象構文木(AST)を用いてプログラミング言語(PL)をよりよく理解することを目的とした事前学習型言語モデルAstBERTモデルを提案する。
具体的には、GitHubから大量のソースコード(javaとpythonの両方)を収集し、ソースコードに関する情報を解釈して統合することができます。
実験結果から,我々のAstBERTモデルが両下流タスクの最先端性能を達成することが示された。
論文 参考訳(メタデータ) (2022-01-20T03:27:26Z) - Retrieve and Refine: Exemplar-based Neural Comment Generation [27.90756259321855]
同様のコードスニペットのコメントはコメントの生成に役立ちます。
我々は、与えられたコード、AST、類似したコード、そして入力として見劣りする新しいセク2seqニューラルネットワークを設計する。
約200万のサンプルを含む大規模Javaコーパスに対するアプローチを評価した。
論文 参考訳(メタデータ) (2020-10-09T09:33:10Z) - Exploring Software Naturalness through Neural Language Models [56.1315223210742]
ソフトウェア自然性仮説(Software Naturalness hypothesis)は、自然言語処理で使用されるのと同じ手法でプログラミング言語を理解することができると主張している。
この仮説は,事前学習されたトランスフォーマーベース言語モデルを用いて,コード解析タスクを実行することによって検討する。
論文 参考訳(メタデータ) (2020-06-22T21:56:14Z) - Self-Supervised Log Parsing [59.04636530383049]
大規模ソフトウェアシステムは、大量の半構造化ログレコードを生成する。
既存のアプローチは、ログ特化や手動ルール抽出に依存している。
本稿では,自己教師付き学習モデルを用いて解析タスクをマスク言語モデリングとして定式化するNuLogを提案する。
論文 参考訳(メタデータ) (2020-03-17T19:25:25Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。