データと状態に対するすべての制約は、代数データ型として表すことができますか?
システムの制約を ADT として表現できる方法が気に入っています。
つまり、ADT のすべての可能な値はシステムの可能な状態であり、不一致の余地はありません。
これは常に当てはまりますか、それとも ADT として表現できない制約がありますか?
(言い換えると、一連の制約を ADT として表すことができない場合、それは単に私が十分に調べていないだけなのか、それともある種の制約が ADT では施行できないのかということでしょうか?)
これの数学的証明はありますか?
アップデート:
おもちゃの問題は次のとおりです。
(ローグライク) 2D マップは、それぞれがマテリアル (岩または空気) を持つ正方形のセルで構成されます。
各セルには 4 つの境界 (N、S、E、および W) があります。各境界は 2 つのセルによって共有されます。
一方が岩で、もう一方が空気である場合にのみ、境界にオプションで「壁フィーチャ」を含めることができます。
(壁の機能は、レバー、写真、ボタンなどです)。
片側が岩で反対側が空気の場合にのみ、壁の機能を格納する場所を持つことができる ADT 設計はどれですか? つまり、データ構造は、2 つの空気セルまたは 2 つの岩セルの間の境界にある壁の特徴を表すことはできません。