查找相關知識與題目 →

第 826 題:有向無環圖的拓撲排序

本頁導覽
  1. 原題與已知條件
  2. 定義與適用範圍
  3. 逐步推導
  4. 逐步反向核對
  5. 結論
  6. 本題覆核與來源綁定

返回所在分頁 5

← 逐題詳解目錄 · 原題批次

P1000-0826 · q-20261015-advance-20261116-r06-topological-ordering-dag-0076

原題與已知條件

finite digraph、完整vertex permutation與all-edge order責任。操作=toposort-cycle-boundary;資料={"vertices":["v0","v1","v2","v3","v4","v5"],"edges":[["v0","v1"],["v1","v2"],["v2","v0"],["v0","v2"]]}。請依 exact_ordered_tuple_declared_by_interface 欄序回答。

  • G001 — finite digraph、完整vertex permutation與all-edge order責任。操作=toposort-cycle-boundary;資料={"vertices":["v0","v1","v2","v3","v4","v5"],"edges":[["v0","v1"],["v1","v2"],["v2","v0"],["v0","v2"]]}。請依 exact_ordered_tuple_declared_by_interface 欄序回答。

定義與適用範圍

Kahn 停住時另列逐邊核對的有向環;環上的嚴格位置不等式使拓撲次序不可能。

逐步推導

S001 · implies

操作前

V=[v0, v1, v2, v3, v4, v5]

操作後

all directed edges=[[v0, v1], [v0, v2], [v1, v2], [v2, v0]]

條件:無

這是完整指定的有限有向圖,不是圖論術語的完全圖。

步驟識別與依賴

規則:full_directed_graph · 依賴:G001

S002 · implies

操作前

remaining=[v0, v1, v2, v3, v4, v5]; active edges=[[v0, v1], [v0, v2], [v1, v2], [v2, v0]]

操作後

indegrees=[[v0, 1], [v1, 1], [v2, 2], [v3, 0], [v4, 0], [v5, 0]]; sources=[v3, v4, v5]

條件:無

每次都以尚未移除的邊重新計算入度,不以原始入度硬套全部步驟。

步驟識別與依賴

規則:remaining_indegree · 依賴:G001, S001

S003 · implies

操作前

zero-indegree choices=[v3, v4, v5]

操作後

choose=v3; new prefix=[v3]

條件:無

按已宣告的字典序挑第一個零入度點,並移除它發出的邊。

步驟識別與依賴

規則:lexicographic_kahn_choice · 依賴:G001, S002

S004 · implies

操作前

remaining=[v0, v1, v2, v4, v5]; active edges=[[v0, v1], [v0, v2], [v1, v2], [v2, v0]]

操作後

indegrees=[[v0, 1], [v1, 1], [v2, 2], [v4, 0], [v5, 0]]; sources=[v4, v5]

條件:無

每次都以尚未移除的邊重新計算入度,不以原始入度硬套全部步驟。

步驟識別與依賴

規則:remaining_indegree · 依賴:G001, S003

S005 · implies

操作前

zero-indegree choices=[v4, v5]

操作後

choose=v4; new prefix=[v3, v4]

條件:無

按已宣告的字典序挑第一個零入度點,並移除它發出的邊。

步驟識別與依賴

規則:lexicographic_kahn_choice · 依賴:G001, S004

S006 · implies

操作前

remaining=[v0, v1, v2, v5]; active edges=[[v0, v1], [v0, v2], [v1, v2], [v2, v0]]

操作後

indegrees=[[v0, 1], [v1, 1], [v2, 2], [v5, 0]]; sources=[v5]

條件:無

每次都以尚未移除的邊重新計算入度,不以原始入度硬套全部步驟。

步驟識別與依賴

規則:remaining_indegree · 依賴:G001, S005

S007 · implies

操作前

zero-indegree choices=[v5]

操作後

choose=v5; new prefix=[v3, v4, v5]

條件:無

按已宣告的字典序挑第一個零入度點,並移除它發出的邊。

步驟識別與依賴

規則:lexicographic_kahn_choice · 依賴:G001, S006

S008 · implies

操作前

remaining=[v0, v1, v2]; active edges=[[v0, v1], [v0, v2], [v1, v2], [v2, v0]]

操作後

indegrees=[[v0, 1], [v1, 1], [v2, 2]]; sources=[]

條件:無

每次都以尚未移除的邊重新計算入度,不以原始入度硬套全部步驟。

步驟識別與依賴

規則:remaining_indegree · 依賴:G001, S007

S009 · implies

操作前

cycle candidate edge v0→v2

操作後

edge present: 是

條件:無

逐邊核對回到起點的有向閉路,不只憑Kahn停住的印象宣告。

步驟識別與依賴

規則:cycle_edge_witness · 依賴:G001, S008

S010 · implies

操作前

cycle candidate edge v2→v0

操作後

edge present: 是

條件:無

逐邊核對回到起點的有向閉路,不只憑Kahn停住的印象宣告。

步驟識別與依賴

規則:cycle_edge_witness · 依賴:G001, S009

S011 · implies

操作前

[v0, v2, v0]

操作後

pos(v0) < pos(v2) < pos(v0) is impossible

條件:無

若有拓撲次序,沿完整有向環的嚴格位置不等式會要求起點先於自己,矛盾。

步驟識別與依賴

規則:strict_order_cycle_contradiction · 依賴:G001, S010

逐步反向核對

  • S011 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。
  • S010 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。
  • S009 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。
  • S008 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。
  • S007 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。
  • S006 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。
  • S005 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。
  • S004 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。
  • S003 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。
  • S002 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。
  • S001 · premise_and_result_audit — 核對完整頂點與邊;一個失敗次序不等於有環,全部合法分支不能漏列。

結論

([[[v0, v1, v2, v3, v4, v5], [v3, v4, v5], v3], [[v0, v1, v2, v4, v5], [v4, v5], v4], [[v0, v1, v2, v5], [v5], v5]], [v0, v1, v2], [v0, v2, v0], 是, 是, 否, directed_cycle_blocks_every_topological_order_while_multiple_orders_and_empty_edges_are_allowed)

上述完整代值與條件核對得到原題答案;欄位次序及真假標記保持原始合約。

本題覆核與來源綁定

覆核日期:2026-10-26

原題、答案、步驟表達式、數值 AST 與既有歷史保持原樣;原來的候選狀態屬於來源歷史,不覆寫為形式化證明。

來源雜湊與覆核憑證
  • input commit: 0f7be61e2c22317a4075561dc822c87d881a50db
  • original question SHA-256: d85565636eb3d84c6c400a1b46405970d7b4e51f5d31ae2211babff97277b671
  • candidate record SHA-256: 2722a44a829d1e2e359b6b7d7b1b8b2a1a092a5a0c34c458491cf9644fac84d8
  • semantic review receipt SHA-256: 6c2c6d46aded7582a11ac41a8c0b3bdde2669a53bdb6e796eea2039994a02772
  • question-first witness SHA-256: 77e43898df9efdbf8094ad81fe4ab91cf4b4bd82f481eb9b4699b73cb4da612b
  • Lean: NOT_RUN · human review: NOT_PERFORMED
同源完整 JSON