問題タブ [equivalence]
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.
lisp - スキームのシンボリック等価
私が使用しているプラットフォームは DrScheme です。
(a b)
[によって構築された]ペア(cons a b)
は、次のような手順のように言語内で実装されていることがわかりました。
そしてセレクター:
次に、 のような式で作成されたリストがあります(cons a (cons b (cons c (cons ...))))
。
今、私が理解しようとしていたのはこれです(DrSchemeのプロンプトで入力):
わかりました、l2 は単なるリスト (つまり、手順など...) であり、私が先に説明したように、しかし... l1 とは何ですか? シンボル?キャラの並び?それが何であれ、言語内でどのように実装されていますか? ありがとう!
database - データベース理論: トランザクションのシリアル化可能性
こんにちは、私は試験のために勉強していて、次の質問に出くわしました:
歴史(またはスケジュール)を取る
ここで、w1[x]
トランザクション 1 が Data-Object X に書き込む (r1[x]
読み取りを意味する) ことをc1
意味し、トランザクション 1 がコミットすることを意味します。
このトランザクションビューがシリアライズ可能なのはなぜですか?
ビューのシリアル化可能性のために、履歴 H は、トランザクション 1、2、3 の順次実行と同等のビューである必要があります。したがって、さらに、各データオブジェクトの最終書き込みは、履歴 H のトランザクションの順次実行と同じでなければなりません。したがって、H の最終書き込みは次のようになります。
- x と y の遷移 3 と
- z のトランザクション 1
ただし、シーケンシャルな実行では、最後の書き込みはこのように分散されないため、履歴 H をシリアル化して表示することはできません。
私の間違いはどこですか?
みんな、ありがとう。
relational-algebra - 同値関係代数とチューリング言語
Java のようなプログラミング言語で関係代数を認識しようとするプロジェクトを開始しています。
たとえば、AmericanActor(Name) EuropianActor(Name) という 2 つのリレーションがあるとします。
RA での次の式:
次のプログラムと同等である必要があります。
このトピックに関する出版物を探しています。
regex - 2 つの正規表現を取り、それらが等しいかどうかを判断するアルゴリズムを見つけようとしています
2 つの言語 L1 と L2 を与えて、それらが同等かどうか (L1 = L2) を判断することで、アルゴリズムがどのようなものになるかを調べようとしています。
最初にDFAに変換してから、それぞれを最小限のDFAに減らす必要があると確信していますが、私が見つけたように思いつくのは驚くほど難しい..
また、L1 - L2 と L2 - L1 が空の場合、L1 = L2 であることもわかっています。
ここで理論が得意な人はいますか?
c - Is there a structural equivalence type in C?
Is there a structural type equivalence in C?
c - 名前同義質問
私が持っているとします:
変数a
とb
名前は同等ですか (より具体的には、プリミティブ型には型名がないため、名前が同等と見なすことができますか)?
ありがとう。
javascript - JavaScript比較演算子:アイデンティティと同等性
私はJavaScriptの比較演算子の違いを理解しようとしてきました:アイデンティティと平等。私が読んだことから、==を使用して2つのオブジェクトの同等性をチェックすると、JavaScriptはそれらが同じタイプであるかどうかを判断し、そうでない場合は同じタイプにしようとします。ただし、===は同じように動作しません。例として:
では、これらの「アイデンティティ」演算子と通常の等式演算子の違いは何ですか?両方を持つことの利点は何ですか?
パフォーマンスに違いはありますか?変換を行わないので、恒等演算子の方が速いと思います。
また、配列などのより複雑なオブジェクトに関しては、これらはどのように異なりますか?最も重要なことは、一方を他方よりも使用する必要がある場合について、規則は何を示しているのでしょうか。
javascript - JavaScript の等価推移性がおかしい
私はDouglas Crockford のJavaScript: The Good Partsを読んでいて、私には意味をなさないこの奇妙な例に出くわしました:
著者はまた、「決して and を使用しない==
で!=
ください。代わりに、常に and を使用===
してください」と述べてい!==
ます。しかし、彼はなぜ上記の行動が示されるのか説明していませんか? 私の質問は、なぜ上記の結果がそのままなのかということです。JavaScript では推移性が考慮されていませんか?
javascript - JavaScript の二重等号 (==) は常に対称ですか?
JavaScript の型強制等値演算子が推移的でない場合が多くあります。たとえば、「JavaScript の等価推移性は変だ」を参照してください。
しかし、対称==
でない場合はありますか? つまり、どこにあり、どこにあるのですか?a == b
true
b == a
false