逐步推導
S001 · implies
操作前
source roles = [qf-relation-domain-projection, [A, B, R, operation]]
操作後
derived = [domain_projection, no-invented-domain]
條件:無
按來源分bank:legacy raw SAFE/衍生BigInt無界,BASE Number.isInteger不偷加SAFE/百萬界。underscore operation、domain及寬/嚴keys各依本bank;原JSON完整保存。
步驟識別與依賴
規則:R68_BANK_specific_keys_operations_and_numeric_guards · 依賴:G001
S002 · implies
操作前
source roles = [relation ORIGINAL source A, [5, 6, 7]]
操作後
derived = [[5, 6, 7]]
條件:無
本LDL set長0..100、元素raw SAFE且不重複,空集合合法;排序只屬衍生表示,原JSON順序不改。不是BASE無上限的另一set協定。
步驟識別與依賴
規則:LDL_RAW_distinct_SAFE_set_empty_allowed · 依賴:G001, S001
S003 · implies
操作前
source roles = [relation ORIGINAL target B, [9, 10, 11]]
操作後
derived = [[9, 10, 11]]
條件:無
本LDL set長0..100、元素raw SAFE且不重複,空集合合法;排序只屬衍生表示,原JSON順序不改。不是BASE無上限的另一set協定。
步驟識別與依賴
規則:LDL_RAW_distinct_SAFE_set_empty_allowed · 依賴:G001, S002
S004 · implies
操作前
source roles = [0, [6, 9]]
操作後
derived = [[6, 9]]
條件:無
先驗全部raw R的每對恰兩個SAFE座標,再去重;重複同一pair合法,但不能利用dedup藏起未驗cell。
步驟識別與依賴
規則:Relation_RAW_EVERY_pair_typed_BEFORE_dedup · 依賴:G001, S003
S005 · implies
操作前
source roles = [1, [7, 10]]
操作後
derived = [[7, 10]]
條件:無
先驗全部raw R的每對恰兩個SAFE座標,再去重;重複同一pair合法,但不能利用dedup藏起未驗cell。
步驟識別與依賴
規則:Relation_RAW_EVERY_pair_typed_BEFORE_dedup · 依賴:G001, S004
S006 · implies
操作前
source roles = [[5, 6, 7], [9, 10, 11], [[6, 9], [7, 10]]]
操作後
derived = [是]
條件:無
先驗完整R⊆A×B;關係不必是total function、單值、injective或onto。空R與空carrier在型別符合時合法,原raw重複/順序仍保存。
步驟識別與依賴
規則:Relation_COMPLETE_typed_subset_A_cross_B_NO_function_assumption · 依賴:G001, S005
S007 · implies
操作前
source roles = [[5, 6, 7], [9, 10, 11], [[6, 9], [7, 10]]]
操作後
derived = [[6, 7], {6, 7}]條件:無
Dom(R)只收真正出現在pair第一分量的值,每個一次;A可能有未參與的元素,所以不直接答A。R空時domain空。
步驟識別與依賴
規則:Relation_DOMAIN_actual_FIRST_coordinates_not_declared_A · 依賴:G001, S006