alloy

    1

    1答えて

    1つのイベントをステップごとに転記できますが、複数削除された状態変更の定義方法は苦労しています。私は、このモデルを持っている: open util/ordering[State] sig Event {} sig State { queue : set Event } pred State.post(next' : State, event : Event) { ne

    0

    1答えて

    私は、次のモデルがあります: sig A1 { // ... } sig A2 { // ... } sig S { s_a1: one A1, s_a2: one A2 } 私はサブセットS1を「作る」したいと思い :S0の要素に基づいてS:次へS対象制約: S1は、これらの原子は、条件C1 [s_valid.s_a1]を満たすS0にs_valid S0と

    0

    1答えて

    KodKodプログラムをテストしているときに、この問題が発生しました。私が印刷している間に、関係が無制限であることを教えてくれる:boundedrelations() 。 あなたは何か考えがあるなら、私は感謝するでしょう。

    0

    1答えて

    付録E ソフトウェアアブストラクションには、Hotel Operationsのモデルがあります。モデルはアサートNoIntruderと命名されています。 check NoIntruder for 6 but 12 Time, 3 Room, 3 Guest は合金アナライザはチェックコマンドのその評価に考えていることを例数を確認する方法はあります:アサートが、このコマンドを使用して評価されます

    0

    1答えて

    関係のメソッド閉鎖()に問題があります。もし誰かがKodKodで過渡的な閉鎖がどのように機能するのか説明できれば。 Relation r1 = Relation.nary("r1",4); Relation r2 = Relation.binary("r2"); Relation i = Relation.unary("i"); Relation j = Relation.unary("j"

    0

    1答えて

    私は合金の初心者です(MITによって作られたモデリング言語)。私は合金の2ベッドルームのアパートのリースをモデル化しようとしています。私は、各賃貸アパートの人数が4人以下であるような事実を追加しようとしています。しかし、実行中に生成されたインスタンスは、10人の居住者を持つ唯一の2ベッドルームリースアパートを示しています。私は間違って何をしていますか?また可能ならMITのウェブサイト上のチュートリ

    0

    1答えて

    私は合金のドット演算子(正式なモデリング言語)について混乱しています。時には、私がリレーショナル・ジョインを実行すると、予想される出力が得られることがありますが、時にはsigのフィールドにアクセスするために使用されていると感じられ、リレーショナル・ジョインは機能しません。 おかげで、 ケビン

    2

    1答えて

    私は合金を使用してモデルで書いています。しかし、ある条件では、述部を実行してインスタンスを見つけることができず、インスタンスが見つからないと言います。私は約16インスタンスにバインドを増加しようとしましたが、インスタンスが見つかりません。 これをデバッグする方法はありますか?どのような事実が原因で合金がインスタンスを見つけることができないのか分かりますか? ありがとうございます!

    0

    1答えて

    以下合金述語pは、パラメータtはタイプS.起動run pのシングルトンとして宣言し、正しい結果が得られるので、Tは、2つの異なる要素sとs'を含んでいてもよい述語体状態。しかし、第2のrunコマンドでは、タイプSの2つの分離した要素のセットが述語pに渡され、このコマンドはインスタンスを与えます。それはなぜですか? sig S {} pred p(t: one S) { some s,