逐步推導
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, [11, 12, 13]]
操作後
derived = [[11, 12, 13]]
條件:無
本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, [15, 16, 17]]
操作後
derived = [[15, 16, 17]]
條件:無
本LDL set長0..100、元素raw SAFE且不重複,空集合合法;排序只屬衍生表示,原JSON順序不改。不是BASE無上限的另一set協定。
步驟識別與依賴
規則:LDL_RAW_distinct_SAFE_set_empty_allowed · 依賴:G001, S002
S004 · implies
操作前
source roles = [0, [12, 15]]
操作後
derived = [[12, 15]]
條件:無
先驗全部raw R的每對恰兩個SAFE座標,再去重;重複同一pair合法,但不能利用dedup藏起未驗cell。
步驟識別與依賴
規則:Relation_RAW_EVERY_pair_typed_BEFORE_dedup · 依賴:G001, S003
S005 · implies
操作前
source roles = [1, [13, 16]]
操作後
derived = [[13, 16]]
條件:無
先驗全部raw R的每對恰兩個SAFE座標,再去重;重複同一pair合法,但不能利用dedup藏起未驗cell。
步驟識別與依賴
規則:Relation_RAW_EVERY_pair_typed_BEFORE_dedup · 依賴:G001, S004
S006 · implies
操作前
source roles = [[11, 12, 13], [15, 16, 17], [[12, 15], [13, 16]]]
操作後
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 = [[11, 12, 13], [15, 16, 17], [[12, 15], [13, 16]]]
操作後
derived = [[12, 13], {12, 13}]條件:無
Dom(R)只收真正出現在pair第一分量的值,每個一次;A可能有未參與的元素,所以不直接答A。R空時domain空。
步驟識別與依賴
規則:Relation_DOMAIN_actual_FIRST_coordinates_not_declared_A · 依賴:G001, S006