問題タブ [functional-dependencies]
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.
haskell - Haskell: 機能依存のないデータのシャッフル
一部のデータのフィッシャー・イェーツ・シャッフルを実装しようとしています。このアルゴリズムは、1 次元配列に対して簡単に実装できます。ただし、2 次元行列でデータをシャッフルできる必要があります。
高次元配列にうまく一般化できると思うアプローチは、任意の次元の行列をインデックスの 1 次元配列に変換し、それらをシャッフルしてから、このインデックス配列の各インデックスの要素を要素と交換して行列を再編成することです。インデックス配列の要素のインデックス。つまり、次のような 2x2 行列を取得するには:
これをこの「配列」に変換します。
これを通常どおりにスクランブルして、たとえば、
再編成すると、元のマトリックスは次のようになります。
ここでの私の基本的なアプローチは、次のような型クラスが必要だということです。
次に、次のようなシャッフルを実行する関数を用意します。
考え方は、(RandomGen配管を除いて)シャッフル可能なものを次のようにシャッフルできるはずだということです:
これが私がこれまでに持っているものです:
私の問題:
- これは、単純な問題を解決するための言語拡張が多いように感じます。別の書き方や書き方が分かりやすいでしょうか?
- コミュニティは、関数の依存関係よりも型ファミリーに移行しているように感じます。この問題を解決する代わりにそれを使用する方法はありますか?
- 私の一部は、
fisherYates
関数を何らかの形で型クラスに移動できるかどうか疑問にShuffle
思っています。と の両方を実装shuffle
または実装するように、これを設定することは可能ですか、または行う価値がありますか?indices
reorganize
ありがとう!
haskell - タイプクラスインスタンスの二次爆発を回避する方法は?
検討:
このようなクレイジーなものが機能することに非常に興奮していますが、TimeAdder
インスタンスの2次爆発をどのように回避できるのでしょうか。
haskell - 複数型の機能依存
GHCで(精神的に)次のことが可能ですか?
どのような代替手段がありますか?
haskell - タプルをフラット化するための重複するインスタンス
タプルチェーンから空のタプルを削除するコードを記述しようとしています。コンパイラはプログラムを拒否します。
コード:
ゴール:
database-design - 個別の依存関係を持つデータ列の正規化
は、ボードを貸すために、例えば販売のために不動産業者のためにボードを建てる会社です。
エージェントがジョブを投稿すると、ボードアドレス、ボードを所有するエージェント、およびジョブタイプがすべて保存されます。
注:属性の前のアスタリスクは主キーであり、後のアスタリスクは外部キーです。すべてのテーブルが表示されるわけではありません
これで、ジョブタイプテーブルができました。各ジョブには次のものがあります。
- board_id(クライアントとボードがある場所を追加するため)
- job_type_id(ボードを立てる、降ろす、変更する、販売済みの伝票を追加するなど)
これは私のジョブタイプテーブルです
データは次のようになります:(行は省略)
私はデータベースを効率的に正規化しようとしていますが、正規化によれば、テーブルにはIDに直接依存するデータのみが含まれることになっています。たとえば、agent_nameとagent_officeはagent_idに直接依存します。
ただし、ジョブタイプテーブルでは、SLIPはBOARD列に直接依存し、ボード列はアクション列に直接依存します。
しかし、確かに、すべての列をキーを使用して別々のテーブルに選択するのは正しくありませんか?
私の漠然とした質問は次のとおりだと思います。
haskell - -XUndecidableInstances を使用せずに機能依存関係のカバレッジ条件を回避する方法
関数の依存関係を使用すると、頻繁にCoverage Conditionにヒットします。で持ち上げることは可能ですUndecidableInstances
が、私は通常、その延長から離れるようにしています.
これは、なしで動作するやや不自然な例ですUndecidableInstances
。
結果の型をより一般的なものにすると、カバレッジ条件が失敗します (したがって が必要UndecidableInstances
です)。
b
とc
はどちらも によって決定されるa
ため、より一般的なコードは問題を引き起こさないはずだと考えたので、私の質問:
UndecidableInstances
ここでの使用に問題はありますか- 依存せずに上記のシナリオをモデル化できますか
UndecidableInstances
(おそらく型ファミリを使用しますか?)
relational-database - 与えられた関係の最高の正規形を見つける方法
私はインターネットと本を調べましたが、この関係の通常の形を決定する方法についてまだいくつかの困難があります
これまでのところ、唯一の候補キーは BHI であることがわかりました (F で数える必要がある場合は、BFHI です)。属性 F はまったく使用されていないためです。特定の FD から完全に独立しています。
- では、属性 F をどうすればよいのでしょうか。
- 現実 R の最高正規形を決定する方法は?
relational-database - 特定のスキーマ内のすべての FD を検索する
指定されたスキーマからFDを見つけることになっています=>
これは、貸出された本の記録を保持する図書館 DB システム用であるとしましょう。また、returnDate 属性を nil にすることもできます。私はこれらのFDに来ました=>
問題は、私の FD がすべてのスキーマであるかどうか、またそれらが正しいかどうか、完全にはわからないということです。今のところ、それらは私には論理的に思えますが、外部からの入力は非常に役立ちます.
functional-dependencies - 分解の関数従属性をどのように計算しますか?
たとえば、Rには次の属性があります:{A、B、C、D、E}、次の機能依存性があります。
そして、R1(A、B、C)とR2(A、D、E)からなる分解があります。R1とR2の機能従属性を計算するにはどうすればよいですか?
宿題に関する実際の質問では、R1/R2がBCNF/3NF /にないかどうかを尋ねられますが、その部分の実行方法はすでに知っています(FDの左側が候補キーに含まれているかどうかを確認してください)。
haskell - 「関数の依存関係を使用して結合するときに型を一致させることができませんでした」というエラーはどういう意味ですか?
現在、受講しているコース用の小さなコンパイラを作成しています。そこで、型チェックを処理するためにこのモナド変換子を書き始めましたが、非常に不可解な型エラーが発生しました。私が本当によく知らない機能的な依存関係を含む何か。エラーを再現できるプログラムからの小さな抜粋:
そして実際のメッセージ: