alloy

    0

    1答えて

    以下は、電子メールアドレス帳の合金モデルです。アドレス帳の各名前は、名前またはアドレスのいずれかにマッピングされます。 それぞれの名前を最終的にアドレスにマッピングする必要があります(例:Family - > Tom - > Tom_addr)。私はこれを実装するための事実を作りました。私の事実が正しいことを確認するために、私はアサルトを作成しました。 私はアサルトに何を配置するかについて長い間困

    0

    1答えて

    こんにちは、無限の普遍的な数量を扱うとき、私は合金で問題が発生してきた ディーリング。ダニエル・ジャクソンの本「ソフトウェア抽象化」(第5.3節「無限大の量的限定子」)で説明されているように、Alloyは普遍的な量限定子とアサーションの検査に関して微妙な制限があります。合金は、セットが(前述の本の中で示されている)組合下で閉じていることを確認するためにそのような次のようないくつかの場合には偽反例を

    0

    1答えて

    Javaプログラムを作成して、複数の合金実行を実行し、各ループのスコープ値(0〜9の整数)を変更し、より少ない時間で解決策を見つけることができます。 コマンドが実質的に同じであることに注意してください。つまり、スコープの値(および予約語の有無)だけが異なることに注意してください。 1st run → command: run MyPred for 3 but 5 Int, exactly 1 Si

    0

    1答えて

    以下の合金モデルを検討してください。これは、学生提出のエッセンスを取り除いたものです。問題はもちろん、スケジューリングシステムであり、学生が(同時に同じ場所に2つの異なるコース会議)競合がないと言うことを試みていた。 abstract sig Room{} one sig S20, S30, S50 extends Room{} abstract sig Period{} one sig

    0

    1答えて

    私は合金を研究していて、一般的な単純な配列リストを指定しようとしています。私の仕様は、Alloy's Book and Online Tutorialの最初の例に基づいています。私はその基本的な機能をテストしようとしていますが、実際には単純なものですが、動作していないため、その理由が分かりません。これは私の仕様です: module FileSystem/Lists[A] open util/or

    0

    1答えて

    Iは次のように私のモデルにおける合金機能を有する:関数の戻り値であるが {$ 1のフィールド、フィールド$ 0} :この関数は私のモデルで動作しているとなどの要素の集合を返すことができる fun whichFieldIs[p:Program, fId:FieldId, c:Class] : Field{ {f:Field | f in c.*(extend.(p.classDeclara

    0

    1答えて

    以下の合金モデルには、3つのシングルトンサブシグネチャがあります(Tom、John、Barb)。彼らは人を拡張する。その人はトム、ジョン、そしてバーブから成っているという主張があります。私はAlloy Analyzerが反例を生成することを期待していましたが、そうではありませんでした。どうして?人は抽象的ではないので、(Tom + John + Barb)にいない人がいるかもしれませんが、そうです

    0

    1答えて

    ページ137は、これらの顕著文ました: 整数は実際には非常に有用ではありません。あなたがそれらが必要だと思うなら、 をもう一度考えてください。 のプロパティをよりよく一致させる、より抽象的な記述がしばしばあります。なぜなら、整数が問題 に現れるということは、そのようにモデル化されるべきではありません。 整数が必要かどうかを調べるには、 が実際に依存しているプロパティーを自分自身に問い合せてください