Z3で変数の代わりに関数を使用する必要があるのはいつですか?

パトリック

Z3で2つの数独ソルバーを作成しました。1つは81の変数を使用し、もう1つはx座標とy座標をsquare [x] [y]の数値にマップする関数を使用します。代わりに配列を使用することもできると思います。

Z3変数のPython配列を持つこと、Z3配列を持つこと、またはZ3で関数を持つことの違いは何ですか?いつどちらを使うべきですか?

クリストフ・ウィンターシュタイガー

この質問に対する一般的に適用可能な答えはありません。通常、問題をモデル化する方法は複数あり、どれが実際に最適であるかは明確ではありません。原則として、コストのかかる理論間の推論を回避するため、1つの理論内に維持することは理にかなっています。つまり、ビットベクトルまたは(有界)整数に固執しますが、整数をビットベクトルに変換しようとしないでください(たとえば、このint2bv用語は基本的にZ3によって解釈されないものとして扱われます)。また、Z3で実装されたものよりも、配列の問題を解決するためのより良い解決策があることが知られているので、それらが本当に必要でない場合は、それらを排除するのに役立ちます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

React状態変数の代わりにMobXobservableを使用する必要があるのはいつですか?

分類Dev

10進数の代わりにdoubleを使用する必要があるのはいつですか?

分類Dev

メソッド内でローカル変数の代わりに最終変数を使用する必要があるのはいつですか

分類Dev

Kotlinの演算子を使用する代わりに、プラス、マイナス、回の関数を使用する必要があるのはいつですか?

分類Dev

クラスで関数foo()の代わりにfoo()を使用する必要があるのはなぜですか?

分類Dev

SQL Server 2008で関数の代わりにストアドプロシージャを使用する必要があるのはいつですか?

分類Dev

関数の代わりにVarを使用するのはいつですか?

分類Dev

変数の値を入力する代わりに、このインスタンスで変数を使用する必要があるのはなぜですか?

分類Dev

C ++で関数ポインタの代わりに関数参照を使用するのはいつですか?

分類Dev

AngularでrouterLinkの代わりにhrefを使用する必要があるのはいつですか?

分類Dev

新しい例外の代わりにThrowableを使用する必要があるのはいつですか?

分類Dev

boolの代わりにatomic <bool>を本当に使用する必要があるのはいつですか?

分類Dev

UIButtonの代わりにanyObjectを迅速に使用する必要があるのはいつですか?

分類Dev

@Serviceの代わりに@Componentを使用する必要があるのはいつですか?

分類Dev

JSONFieldの代わりにHStoreFieldを使用する必要があるのはいつですか?

分類Dev

items()の代わりにiteritems()を使用する必要があるのはいつですか?

分類Dev

Forループの代わりにマップを使用する必要があるのはいつですか?

分類Dev

クラスの代わりに構造体を使用する必要があるのはいつですか?

分類Dev

Memcachedの代わりにMemcacheを使用する必要があるのはいつですか?

分類Dev

クラスの代わりに構造体を使用する必要があるのはいつですか?

分類Dev

クラスの代わりに構造体を使用する必要があるのはいつですか?

分類Dev

GL_RGB8の代わりにGL_SRGB8を使用する必要があるのはいつですか?

分類Dev

std :: thread :: spawnの代わりにstd :: thread :: Builderを使用する必要があるのはいつですか?

分類Dev

os.popenの代わりにsubprocess.Popenを使用する必要があるのはいつですか?

分類Dev

ドメインの代わりに列挙型を使用する必要があるのはいつですか?

分類Dev

Swift:「let」の代わりに「var」を使用する必要があるのはいつですか?

分類Dev

Angular2のprovide()関数はRC4以降では非推奨ですが、代わりに何を使用する必要がありますか?

分類Dev

GLADの組み込みローダーの代わりに外部OpenGLローダー関数を使用する必要があるのはなぜですか?

分類Dev

関数の代わりに#definemacro(x)を使用するのはいつ、なぜですか?

Related 関連記事

  1. 1

    React状態変数の代わりにMobXobservableを使用する必要があるのはいつですか?

  2. 2

    10進数の代わりにdoubleを使用する必要があるのはいつですか?

  3. 3

    メソッド内でローカル変数の代わりに最終変数を使用する必要があるのはいつですか

  4. 4

    Kotlinの演算子を使用する代わりに、プラス、マイナス、回の関数を使用する必要があるのはいつですか?

  5. 5

    クラスで関数foo()の代わりにfoo()を使用する必要があるのはなぜですか?

  6. 6

    SQL Server 2008で関数の代わりにストアドプロシージャを使用する必要があるのはいつですか?

  7. 7

    関数の代わりにVarを使用するのはいつですか?

  8. 8

    変数の値を入力する代わりに、このインスタンスで変数を使用する必要があるのはなぜですか?

  9. 9

    C ++で関数ポインタの代わりに関数参照を使用するのはいつですか?

  10. 10

    AngularでrouterLinkの代わりにhrefを使用する必要があるのはいつですか?

  11. 11

    新しい例外の代わりにThrowableを使用する必要があるのはいつですか?

  12. 12

    boolの代わりにatomic <bool>を本当に使用する必要があるのはいつですか?

  13. 13

    UIButtonの代わりにanyObjectを迅速に使用する必要があるのはいつですか?

  14. 14

    @Serviceの代わりに@Componentを使用する必要があるのはいつですか?

  15. 15

    JSONFieldの代わりにHStoreFieldを使用する必要があるのはいつですか?

  16. 16

    items()の代わりにiteritems()を使用する必要があるのはいつですか?

  17. 17

    Forループの代わりにマップを使用する必要があるのはいつですか?

  18. 18

    クラスの代わりに構造体を使用する必要があるのはいつですか?

  19. 19

    Memcachedの代わりにMemcacheを使用する必要があるのはいつですか?

  20. 20

    クラスの代わりに構造体を使用する必要があるのはいつですか?

  21. 21

    クラスの代わりに構造体を使用する必要があるのはいつですか?

  22. 22

    GL_RGB8の代わりにGL_SRGB8を使用する必要があるのはいつですか?

  23. 23

    std :: thread :: spawnの代わりにstd :: thread :: Builderを使用する必要があるのはいつですか?

  24. 24

    os.popenの代わりにsubprocess.Popenを使用する必要があるのはいつですか?

  25. 25

    ドメインの代わりに列挙型を使用する必要があるのはいつですか?

  26. 26

    Swift:「let」の代わりに「var」を使用する必要があるのはいつですか?

  27. 27

    Angular2のprovide()関数はRC4以降では非推奨ですが、代わりに何を使用する必要がありますか?

  28. 28

    GLADの組み込みローダーの代わりに外部OpenGLローダー関数を使用する必要があるのはなぜですか?

  29. 29

    関数の代わりに#definemacro(x)を使用するのはいつ、なぜですか?

ホットタグ

アーカイブ