問題タブ [openjml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
594 参照

java - 実数についての推論

Z3 と組み合わせて OpenJML を試しており、次の値について推論しようとしていdoubleますfloat

OpenJML がAUFLIAをサポートしていないデフォルトのロジックとして使用していることはすでにわかっていますreals。私は今使用してAUFNIRAいます。

残念ながら、ツールはこのクラスを証明できません:

どうしてこれなの?

0 投票する
1 に答える
110 参照

java - openJML を使用してマトリックスを反復処理する

特定の位置にすべて 0 と 1 で初期化されたマトリックスを持つクラスがあります。

不変条件を追加して、値が 1 の 1 セルと値が 0 の 35 セルが常に 1 つしかないことを確認したいと思います。

しかし、コンストラクタの直後に不変エラーが発生します。プロパティをチェックするためにマトリックスを反復処理するにはどうすればよいですか?

0 投票する
1 に答える
172 参照

java - Maven ビルドでの契約チェック

私は IJ で Java コードベースに取り組んでおり、現在 Maven で構築しています。コードの一部を、Maven ビルドで取り上げられる何らかの形式のコントラクトで補足したいと思います。これまでのところ、私はそのような機能を既製品で探すことに成功していません。

  • OpenJMLですが、コードを分析するには独自のツールが必要なようで、ビルドに簡単に統合する方法が見つかりませんでした。
  • Jetbrains 契約。これらはインスペクションを介して IntelliJ で警告を発しますが、ビルドには影響しません。

注:ここでは、コンパイル時にチェック可能なコントラクトのみを扱います。ランタイム側でスローするJUnitがあります。

実施する契約:

このセクションを追加して、どのような種類の契約を施行したいかというコメントに答えました。理想的には、そのソリューションが完全であることを条件として、可能な限り最も強力なソリューションを希望します。ここで完全とは、言語のすべてのステートメントがコンパイル時にチェッカーによって良いか悪いかをチェックできるような、コントラクトの言語とコントラクト チェッカーを意味します。これは大きな質問かもしれませんが、Jetbrains が提供するものなど、最も単純な契約でも満足します。

具体的な例として、次の関数を検討してください。

これにより、Jetbrains コントラクトが正常に通過します。

そして、この不自然な契約は失敗します:

しかし、上記の不自然で悪いコントラクトを使用しても、Maven ビルドは問題なく動作します。ビルドは検査結果を取得しません。これらは IJ 内からのみ表示されます。ビルドにフックして、契約に違反した場合に失敗できるようにしたいと思います。

0 投票する
1 に答える
186 参照

java - JML の正しいインストール方法

Java モデリング言語 (JML) をインストールしようとしましたが、問題が発生しました。Windows 10 の Eclipse IDE を使用しています。Eclipse -> ヘルプ -> 新しいソフトウェアのインストールを開き、これを使用してインストールしました。

次に、Eclipse を再起動すると、上部のメニュー バーに新しいアイコンが表示されました。JML アイコンをコンパイルまたは使用しようとすると、Eclipse に巨大なエラー メッセージが表示されました。(画像)

これを修正するにはどうすればよいですか? Webサイトで解決策が見つかりませんでした