問題タブ [formal-methods]

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 投票する
1 に答える
203 参照

predicate - 合金の事実両方の特性ではない

私はALLOYにコードを持っており、レストランの予約システムを実行しようとしています。このシグニチャとそれらの間の関係があります。

私は朝食のためにそれが両方ではなく予約または無料であることができて、そして昼食と夕食で同じことを何か考えがあるという事実を置きたいですか?

0 投票する
3 に答える
459 参照

formal-methods - 形式手法-代数的仕様とオブジェクト指向

私はいくつかの研究の最中であり、役立つ多くの文献を見つけることができませんでした。2つの形式手法のプラットフォーム依存性を比較したいと思います。代数的仕様とオブジェクト指向。彼らはどの言語を使用しますか?

誰かがこれについて何か知っているか、私を正しい方向に向けることができますか?ありがとう

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

methods - Formal Methods、Logic、VDM の過去の試験問題

誰かが次の質問で私を助けてくれることを望んでいました.答えが最善ですが、正しい方向に私を向けることができれば. 私は大学の最終学年の学生で、これらの質問は形式的方法に関する以前の試験からのものであり、今年の論文の準備ができている答えを知っていればできます。私たちの講師は最高ではないようで、これについて多くをカバーしていないため、正確な答えを見つけることは不可能であることが証明されています. グーグルはあまり役に立ちませんでしたし、推奨された本もありませんでした.

1 - ∃x • P (x) が ¬∀x • ¬P (x) と論理的に等価であり、∀x ∈ S • P (x) が ∀x • x ∈ S ⇒ P (x) を意味すると仮定すると、 ∃x ∈ S • P (x) は、∃x • x ∈ S ∧ P (x) を意味します。

2 - 定義を示すために証明する必要がある 2 つのステートメントを説明してください。

仕様の正しい実装です:

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

proof - 形式論理の正しさの証明

誰かがこの質問に答えるのを手伝ってくれるかどうか疑問に思っていました. これは以前の試験用紙からのものであり、今年の試験の準備ができている答えを知っていればできることです。

この質問は非常に単純に思えて、完全に道に迷ってしまいます。正確には何を求めているのでしょうか?

整数変数を含むコードの次のセクションを検討してください。

適切な出力条件を記述し、コード片の正確性を検証することにより、実行後に m が i と j の最小値に等しいことを証明します。

私は投稿条件を次のように持っています: {m = i ∧ i < j ∨ m = j ∧ j < i}

これは正しいです?そして、これをどのように確認しますか?

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

css - CSS ボックス配置の正式なセマンティクス

私は (理論的な) コンピューター サイエンスの学生であり、プログラミング言語のセマンティクスの調査は私の研究対象の 1 つです ( wikipedia )。

私は CSS をいろいろいじり、ボックスの配置規則をある程度理解しています。(特定のレイアウトでページを作成するように言われると、正しいボックス アプローチと適用可能な CSS ルールを思いつくことがよくあります。)

CSS のボックスの配置規則にある種の正式なセマンティクスがあればいいのですが、しばらくネットを検索した後も、役立つものはまったく見つかりませんでした。

ほとんどの場合、最終的に CSS 仕様にたどり着きます。これは、疑似アルゴリズムを使用した長いテキストとしてフォーマットされています (最大の読み物ではありません --- これらの仕様は、まだ多くの努力を払って読んでいません)。

この「理論」を、仕様が提供するものよりも厳密な数学的モデルに形式化しようとした人はいませんか? 私は完全なものや決定的なものを探しているわけではありませんが、少なくともボックスを配置する方法が正式な方法でモデル化できれば、それは確かに素晴らしい (そして便利です!) でしょう。

そのような研究を知っている人はいますか?

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

verification - SMTソルバーの制限

従来、計算ロジックでのほとんどの作業は、SAT(充足可能性)ソルバーを使用する命題論理、または1次定理証明器を使用する1次のいずれかでした。

近年、基本的に命題論理を算術などの理論で補強するSMT(満足度モジュロ理論)ソルバーで多くの進歩が見られました。SRIInternationalのJohnRushbyは、彼らを破壊的技術と呼んでいます。

一階述語論理で処理できるが、SMTでは処理できない問題の最も重要な実際的な例は何ですか?特に、ソフトウェア検証の領域でSMTが処理できない問題はどのようなものでしょうか。

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

formal-methods - Alloy 4.2 のセマンティクスの変更が Alloy book の演習 A.1.6 に与える影響は?

Alloy 4.2 のリリース ノートによると、整数に関連するセマンティクスの変更があります。これらの変更は、Alloy book の演習 A.1.6 に影響を与えるようです。

この演習では、次のコードがベースとして提供されます (問題を示すために最後に「Int」を追加しました)。「show」述語を実行すると、ビジュアライザーはインスタンスを表示しますが、このインスタンスには、整数に加えて、さらに 2 つのアトム「Univ0」と「Univ1」が含まれています。

この 2 つのアトム「Univ0」と「Univ1」の意味は何ですか? なぜ彼らはそこにいるのですか?これらは、Alloy 4.1.10 で実行された同じコードでは表示されません。

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

graph - Z 記法: 2D 配列の表現

私はZ表記の完全な初心者です。Z でグラフ タイプを表す必要があります。私が考えているのは、ノードとエッジの間を簡単に自由に移動できるように、インシデンス マトリックスを使用することです。

唯一の問題は、Z で入射行列を指定する方法がわからないことです。私は 2D 配列が必要だと思いますが、Z 表記に使用できる参照資料を調べると、配列は一般的に seq を使用して表されます。多次元配列を指定する別の方法はありますか?

前もって感謝します。

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

compiler-construction - 最適化のためのLLVM静的値分析

私がこのような関数を持っているとしましょう:

この些細な関数は常に1を返します。-O2オプションを指定してclangを使用してコンパイルし、分解されたコードを見ると、LLVMはこの関数を。として正しくコンパイルしますreturn 1;

私の質問は:llvmは静的値analysysをどのように実行しますか?最も弱い前提条件のテクニック?値の伝播?ホアのテクニック?

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

alloy - 完全に接続されたネットワークで、時間の経過とともに Alloy にセットを配置する

この質問からのフォローアップ...

完全に接続されたグラフがあります。これは素晴らしいことです。時間の概念も追加しました。現在、グラフの周りにデータを渡すという概念に苦労しています。

システムに挿入されたデータのコピーが各ノードにあることを確認するタスクを持つシステムをモデル化しています。これを行う方法については頭の中に手順がありますが、それを合金の用語に翻訳するのに苦労しています。

典型的なアルゴリズムは次のようになります。

簡単にするために、各ノードには一意のデータがあり、そのデータを他のすべてのノードに提供する必要があるとしましょう。これは完全に接続されているため、比較的簡単なはずです (合金/形式ロジックへの変換は、私にとっては少し難しいです)。

これは私が現在いる場所です:

私の run 述語から、すべてのメッセージを 20 時間ステップ以内に送信したいことがわかります。そのため、各 DataMirror には、その時間までに 5 つの一意のメッセージで構成されるデータ セットが必要です。

私がやりたいことは、各 DataMirror に 2 つのプロパティを持たせることだと確信しています。

  • 送信する一意のメッセージ (この時点では単純な変数にすることができます)
  • 受信したメッセージのセット (元のメッセージを含む)

すべての DataMirror が同じメッセージ セットを持っている場合、システムは満足します。

たとえば、次の場合:

次に、システムは次の場合に満たされます。

正式なロジックのパワーユーザーをうんざりさせてしまったことを前もってお詫びします...私は火の試練でこれを学ぼうとしています:)。