原題與已知條件
完整有限正確性模型。操作=correctness-partial-audit;資料={"n":6,"init":[0],"halt":[5],"steps":[[0,1],[1,2],[2,5],[0,3],[3,4],[1,1]],"post":[5]}。請依 [reachable_halts,post,bad_halts,partial_correct,vacuous] 欄序回答。
G001 — 完整有限正確性模型。操作=correctness-partial-audit;資料={"n":6,"init":[0],"halt":[5],"steps":[[0,1],[1,2],[2,5],[0,3],[3,4],[1,1]],"post":[5]}。請依 [reachable_halts,post,bad_halts,partial_correct,vacuous] 欄序回答。
逐步推導
S001 · implies
操作前
n=6;raw Init=[0];raw Halt=[5];raw Step=[[0, 1], [1, 2], [2, 5], [0, 3], [3, 4], [1, 1]]
操作後
Init=[0];Halt=[5];canonical raw Step=[[0, 1], [0, 3], [1, 1], [1, 2], [2, 5], [3, 4]]
條件:無
整張有限資料先合型,再去重原有向邊。保留halt的原始出邊在資料中,但執行語意在halt停止;不把stuck當成功halt,也不由一條prefix推一般程式終止。
步驟識別與依賴
規則:finite_transition_normalization · 依賴:G001
S002 · implies
操作前
Init=[0]
操作後
zero-step reachable=[0]
條件:無
每個初始狀態以0步可達,包括初始即halt者;空Init沒有可達狀態。
步驟識別與依賴
規則:zero_step_reachability · 依賴:G001, S001
S003 · implies
操作前
depth=0;state=0;halt=否;raw successors=[1, 3]
操作後
expanded successors=[1, 3];newly reached=[1, 3]
條件:無
從非halt狀態展開全部後繼,不只挑一條路;已見狀態不重複加入。halt即使列有出邊也不展開。
步驟識別與依賴
規則:reachability_halt_truncates_expansion · 依賴:G001, S002
S004 · implies
操作前
completed frontier=[0];depth=0
操作後
next frontier=[1, 3];all reached=[0, 1, 3]
條件:無
前緣清空時才到達完整閉包;有限狀態及只加未見者保證此列舉終止,不依賴路徑長度抽樣。
步驟識別與依賴
規則:complete_finite_reachability_layer · 依賴:G001, S003
S005 · implies
操作前
depth=1;state=1;halt=否;raw successors=[1, 2]
操作後
expanded successors=[1, 2];newly reached=[2]
條件:無
從非halt狀態展開全部後繼,不只挑一條路;已見狀態不重複加入。halt即使列有出邊也不展開。
步驟識別與依賴
規則:reachability_halt_truncates_expansion · 依賴:G001, S004
S006 · implies
操作前
depth=1;state=3;halt=否;raw successors=[4]
操作後
expanded successors=[4];newly reached=[4]
條件:無
從非halt狀態展開全部後繼,不只挑一條路;已見狀態不重複加入。halt即使列有出邊也不展開。
步驟識別與依賴
規則:reachability_halt_truncates_expansion · 依賴:G001, S005
S007 · implies
操作前
completed frontier=[1, 3];depth=1
操作後
next frontier=[2, 4];all reached=[0, 1, 2, 3, 4]
條件:無
前緣清空時才到達完整閉包;有限狀態及只加未見者保證此列舉終止,不依賴路徑長度抽樣。
步驟識別與依賴
規則:complete_finite_reachability_layer · 依賴:G001, S006
S008 · implies
操作前
depth=2;state=2;halt=否;raw successors=[5]
操作後
expanded successors=[5];newly reached=[5]
條件:無
從非halt狀態展開全部後繼,不只挑一條路;已見狀態不重複加入。halt即使列有出邊也不展開。
步驟識別與依賴
規則:reachability_halt_truncates_expansion · 依賴:G001, S007
S009 · implies
操作前
depth=2;state=4;halt=否;raw successors=[]
操作後
expanded successors=[];newly reached=[]
條件:無
從非halt狀態展開全部後繼,不只挑一條路;已見狀態不重複加入。halt即使列有出邊也不展開。
步驟識別與依賴
規則:reachability_halt_truncates_expansion · 依賴:G001, S008
S010 · implies
操作前
completed frontier=[2, 4];depth=2
操作後
next frontier=[5];all reached=[0, 1, 2, 3, 4, 5]
條件:無
前緣清空時才到達完整閉包;有限狀態及只加未見者保證此列舉終止,不依賴路徑長度抽樣。
步驟識別與依賴
規則:complete_finite_reachability_layer · 依賴:G001, S009
S011 · implies
操作前
depth=3;state=5;halt=是;raw successors=[]
操作後
expanded successors=[];newly reached=[]
條件:無
從非halt狀態展開全部後繼,不只挑一條路;已見狀態不重複加入。halt即使列有出邊也不展開。
步驟識別與依賴
規則:reachability_halt_truncates_expansion · 依賴:G001, S010
S012 · implies
操作前
completed frontier=[5];depth=3
操作後
next frontier=[];all reached=[0, 1, 2, 3, 4, 5]
條件:無
前緣清空時才到達完整閉包;有限狀態及只加未見者保證此列舉終止,不依賴路徑長度抽樣。
步驟識別與依賴
規則:complete_finite_reachability_layer · 依賴:G001, S011
S013 · implies
操作前
reached state=0;declared halt=否;raw successors=[1, 3]
操作後
status=active-nonhalt
條件:無
halt標記優先;非halt且無後繼才是stuck,有後繼者為active。沒有出邊不會自動變成成功停止。
步驟識別與依賴
規則:halt_stuck_active_are_distinct · 依賴:G001, S012
S014 · implies
操作前
reached state=1;declared halt=否;raw successors=[1, 2]
操作後
status=active-nonhalt
條件:無
halt標記優先;非halt且無後繼才是stuck,有後繼者為active。沒有出邊不會自動變成成功停止。
步驟識別與依賴
規則:halt_stuck_active_are_distinct · 依賴:G001, S013
S015 · implies
操作前
reached state=2;declared halt=否;raw successors=[5]
操作後
status=active-nonhalt
條件:無
halt標記優先;非halt且無後繼才是stuck,有後繼者為active。沒有出邊不會自動變成成功停止。
步驟識別與依賴
規則:halt_stuck_active_are_distinct · 依賴:G001, S014
S016 · implies
操作前
reached state=3;declared halt=否;raw successors=[4]
操作後
status=active-nonhalt
條件:無
halt標記優先;非halt且無後繼才是stuck,有後繼者為active。沒有出邊不會自動變成成功停止。
步驟識別與依賴
規則:halt_stuck_active_are_distinct · 依賴:G001, S015
S017 · implies
操作前
reached state=4;declared halt=否;raw successors=[]
操作後
status=stuck-nonhalt
條件:無
halt標記優先;非halt且無後繼才是stuck,有後繼者為active。沒有出邊不會自動變成成功停止。
步驟識別與依賴
規則:halt_stuck_active_are_distinct · 依賴:G001, S016
S018 · implies
操作前
reached state=5;declared halt=是;raw successors=[]
操作後
status=halt
條件:無
halt標記優先;非halt且無後繼才是stuck,有後繼者為active。沒有出邊不會自動變成成功停止。
步驟識別與依賴
規則:halt_stuck_active_are_distinct · 依賴:G001, S017
S019 · implies
操作前
reachable Halt state=5;postcondition=[5]
操作後
postcondition satisfied=是
條件:無
部分正確性只在可達halt狀態核後置條件;不可達halt不算反例,尚未停止的狀態也不冒充成功結果。
步驟識別與依賴
規則:partial_correctness_each_reachable_halt · 依賴:G001, S018
S020 · implies
操作前
reachable halts=[5];bad halts=[]
操作後
partial correctness=是;no reachable halt=否
條件:無
沒有可達halt時,部分正確性可能空泛成立,但尚未證明會停。
步驟識別與依賴
規則:partial_correctness_vacuity_not_termination · 依賴:G001, S019