{
  "schema_version": "ocme-reviewed-question-reader-v1",
  "question_id": "q-20261014-advance-20261108-r07-finite-directed-graph-0065",
  "pilot_number": "R0040-20815",
  "number": 20815,
  "family_id": "qf-mod39-digraph-directed-walk-audit",
  "title": {
    "zh-Hant": "第 20815 題：有限有向圖",
    "en": "Question 20815: Every Successive Step Must Follow Its Own Directed Edge"
  },
  "original_question": {
    "schema_version": "ocme-question-v0.1",
    "id": "q-20261014-advance-20261108-r07-finite-directed-graph-0065",
    "batch_id": "batch-20261014-advance-20261108-r07-finite-directed-graph-foundations",
    "language": "zh-Hant",
    "source_mko_ids": [
      "mko-finite-directed-graph"
    ],
    "title_zh": "有限有向圖",
    "stem_zh": "完整有限ordered-pair edge set與loop-free simple digraph convention。操作=digraph-directed-walk-audit；資料={\"n\":5,\"edges\":[[0,1],[1,2],[1,3],[2,3],[2,4],[3,0],[3,4],[4,0]],\"walk\":[0,1,2,3,4,0]}。請依 exact_ordered_tuple_declared_by_interface 欄序回答。",
    "answer": {
      "kind": "expression",
      "value": "([0, 1, 2, 3, 4, 0], [[0, 1, 是], [1, 2, 是], [2, 3, 是], [3, 4, 是], [4, 0, 是]], 是, edge_orientation_must_match)",
      "explanation_zh": "Wave6第二層核對=([0, 1, 2, 3, 4, 0], [[0, 1, 是], [1, 2, 是], [2, 3, 是], [3, 4, 是], [4, 0, 是]], 是, edge_orientation_must_match)；依完整明示資料獨立重算；(u,v)與(v,u)不同，平行同向edge不重複且loop在主模型拒絕；out-degree與in-degree各自總和等於edge count；不沿用undirected degree或connectivity。"
    },
    "difficulty": {
      "band": "undergraduate_core",
      "level": 2,
      "skills": [
        "有限有向圖"
      ]
    },
    "variant": {
      "family_id": "qf-mod39-digraph-directed-walk-audit",
      "seed": 202611087065,
      "parameters": {
        "n": 5,
        "edges": [
          [
            0,
            1
          ],
          [
            1,
            2
          ],
          [
            1,
            3
          ],
          [
            2,
            3
          ],
          [
            2,
            4
          ],
          [
            3,
            0
          ],
          [
            3,
            4
          ],
          [
            4,
            0
          ]
        ],
        "walk": [
          0,
          1,
          2,
          3,
          4,
          0
        ],
        "domain": "Complete_finite_loopless_simple_digraph",
        "operation": "digraph-directed-walk-audit",
        "semantic_template": "qf-mod39-digraph-directed-walk-audit/{\"edges\":[[0,1],[1,2],[1,3],[2,3],[2,4],[3,0],[3,4],[4,0]],\"n\":5,\"walk\":[0,1,2,3,4,0]}"
      }
    },
    "verification": {
      "status": "candidate",
      "checks": [
        "producer_exact_finite_or_symbolic_model",
        "producer_source_snapshot_check",
        "producer_substantive_template_deduplication",
        "producer_json_schema"
      ],
      "warning_zh": "候選須主端重算；不構成人工審定、single-step orbit、finite-prefix monotonicity、ambient-relative topology混同、Chebyshev equality、pairwise-only容斥、無Euclid-lemma uniqueness、loopful digraph、Lean或Evidence。"
    },
    "provenance": {
      "generator_role": "question_producer",
      "generator_model": "model_unknown",
      "generated_at": "2026-10-14",
      "contract_version": "ocme-question-factory-v0.1"
    }
  },
  "original_english_edition": {
    "schema_version": "ocme-question-localization-v0.1",
    "question_id": "q-20261014-advance-20261108-r07-finite-directed-graph-0065",
    "batch_id": "batch-20261014-advance-20261108-r07-finite-directed-graph-foundations",
    "locale": "en",
    "translation_state": "ai_candidate",
    "source": {
      "question_sha256": "363ee32f1793731a78a4ce6a184eaa850b29e30474a9eded6f17fb5559e9a5f8",
      "family_id": "qf-mod39-digraph-directed-walk-audit",
      "seed": 202611087065,
      "semantic_template": "qf-mod39-digraph-directed-walk-audit/{\"edges\":[[0,1],[1,2],[1,3],[2,3],[2,4],[3,0],[3,4],[4,0]],\"n\":5,\"walk\":[0,1,2,3,4,0]}"
    },
    "fields": {
      "title": "Every Successive Step Must Follow Its Own Directed Edge",
      "stem": "Use the complete directed vertex carrier Fin(5)={0,…,4} and canonical ordered-pair edges=[[0, 1], [1, 2], [1, 3], [2, 3], [2, 4], [3, 0], [3, 4], [4, 0]]. (u,v) and (v,u) are different edges; duplicate same-direction edges are forbidden. The main model is loop-free simple with n≥1; only the explicit loop-boundary audit temporarily accepts loops to demonstrate rejection of that main convention. Supplied vertex list walk=[0, 1, 2, 3, 4, 0]. Give (walk, step_checks, all_oriented_steps_present, boundary).",
      "answer": {
        "kind": "expression",
        "value": "([0, 1, 2, 3, 4, 0], [[0, 1, Yes], [1, 2, Yes], [2, 3, Yes], [3, 4, Yes], [4, 0, Yes]], Yes, edge_orientation_must_match)",
        "explanation": "For each consecutive pair report its oriented-edge membership and their conjunction. This is a successive-step audit, not an extra simple-path, distinct-vertex or nonempty-walk certificate. An empty list has no step to refute and makes that conjunction vacuously Yes. The exact result, retaining the requested order, is ([0, 1, 2, 3, 4, 0], [[0, 1, Yes], [1, 2, Yes], [2, 3, Yes], [3, 4, Yes], [4, 0, Yes]], Yes, edge_orientation_must_match)."
      },
      "skills": [
        "Every Successive Step Must Follow Its Own Directed Edge"
      ],
      "verification_warning": "This is a candidate exercise. Mechanical recomputation checks only the stated conditions and this instance; it is neither a formal proof nor human review."
    }
  },
  "givens": [
    {
      "id": "G001",
      "text": {
        "zh-Hant": "完整有限ordered-pair edge set與loop-free simple digraph convention。操作=digraph-directed-walk-audit；資料={\"n\":5,\"edges\":[[0,1],[1,2],[1,3],[2,3],[2,4],[3,0],[3,4],[4,0]],\"walk\":[0,1,2,3,4,0]}。請依 exact_ordered_tuple_declared_by_interface 欄序回答。",
        "en": "Use the complete directed vertex carrier Fin(5)={0,…,4} and canonical ordered-pair edges=[[0, 1], [1, 2], [1, 3], [2, 3], [2, 4], [3, 0], [3, 4], [4, 0]]. (u,v) and (v,u) are different edges; duplicate same-direction edges are forbidden. The main model is loop-free simple with n≥1; only the explicit loop-boundary audit temporarily accepts loops to demonstrate rejection of that main convention. Supplied vertex list walk=[0, 1, 2, 3, 4, 0]. Give (walk, step_checks, all_oriented_steps_present, boundary)."
      }
    }
  ],
  "steps": [
    {
      "id": "S001",
      "uses": [
        "G001"
      ],
      "before": "source operation=digraph-directed-walk-audit;original snapshot and mathematics retained",
      "after": "explicit ordered source output fields=[walk, step_checks, all_oriented_steps_present, boundary]",
      "relation": "implies",
      "rule_id": "source_ordered_interface_explicit_without_javascript",
      "conditions": [],
      "explanation": {
        "zh-Hant": "原題快照保留歷史介面標記；本頁直接列來源欄位順序，不需JavaScript或外部表。標籤不自動是數學證據，No保持來源的聲稱範圍。",
        "en": "Keep the historical interface marker in the original snapshot while listing source fields here without JavaScript or external lookup.Labels are not mathematical evidence,and No retains its source claim scope."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "回到原始資料與本步條件核對，不把單向推論誤稱等價。",
          "en": "Check against the original data and this step's premises; a one-way implication is not an equivalence."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S002",
      "uses": [
        "G001",
        "S001"
      ],
      "before": "ORIGINAL complete directed carrier Fin(5);ORIGINAL lexicographically canonical ORDERED arcs=[[0, 1], [1, 2], [1, 3], [2, 3], [2, 4], [3, 0], [3, 4], [4, 0]]",
      "after": "all endpoints in range and same-direction arcs unique;actual loops=[];main loop-free directed-set convention qualified",
      "relation": "implies",
      "rule_id": "digraph_ordered_pairs_not_undirected_endpoint_sorting",
      "conditions": [],
      "explanation": {
        "zh-Hant": "只核整張arc列表的from/to排序，不把各arc端點排序。(u,v)與(v,u)不同且可同時存在；main禁止loop，boundary暫收loop用來比對慣例，不作一般digraph不存在的判決。",
        "en": "Check outer from/to order without sorting endpoints inside each arc.(u,v) and(v,u)are distinct and may coexist.The main convention forbids loops;the boundary temporarily accepts them to audit that convention,not to deny other digraph models."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "回到原始資料與本步條件核對，不把單向推論誤稱等價。",
          "en": "Check against the original data and this step's premises; a one-way implication is not an equivalence."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S003",
      "uses": [
        "G001",
        "S002"
      ],
      "before": "ORIGINAL consecutive positions=[0, 1];ORIGINAL directed step=[0, 1]",
      "after": "EXACT oriented arc(0,1) present=是;reverse arc is a DIFFERENT lookup",
      "relation": "implies",
      "rule_id": "digraph_every_step_exact_orientation_not_reverse_edge",
      "conditions": [],
      "explanation": {
        "zh-Hant": "每一步必須沿所列方向；只有(b,a)不能代替(a,b)。不刪重複頂點或arc，因walk不是另要求edge唯一的trail。",
        "en": "Every step must follow its listed orientation;(b,a)cannot replace(a,b).Do not delete repeated vertices or arcs:a walk is not an additional edge-distinct trail requirement."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "回到原始資料與本步條件核對，不把單向推論誤稱等價。",
          "en": "Check against the original data and this step's premises; a one-way implication is not an equivalence."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S004",
      "uses": [
        "G001",
        "S003"
      ],
      "before": "ORIGINAL consecutive positions=[1, 2];ORIGINAL directed step=[1, 2]",
      "after": "EXACT oriented arc(1,2) present=是;reverse arc is a DIFFERENT lookup",
      "relation": "implies",
      "rule_id": "digraph_every_step_exact_orientation_not_reverse_edge",
      "conditions": [],
      "explanation": {
        "zh-Hant": "每一步必須沿所列方向；只有(b,a)不能代替(a,b)。不刪重複頂點或arc，因walk不是另要求edge唯一的trail。",
        "en": "Every step must follow its listed orientation;(b,a)cannot replace(a,b).Do not delete repeated vertices or arcs:a walk is not an additional edge-distinct trail requirement."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "回到原始資料與本步條件核對，不把單向推論誤稱等價。",
          "en": "Check against the original data and this step's premises; a one-way implication is not an equivalence."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S005",
      "uses": [
        "G001",
        "S004"
      ],
      "before": "ORIGINAL consecutive positions=[2, 3];ORIGINAL directed step=[2, 3]",
      "after": "EXACT oriented arc(2,3) present=是;reverse arc is a DIFFERENT lookup",
      "relation": "implies",
      "rule_id": "digraph_every_step_exact_orientation_not_reverse_edge",
      "conditions": [],
      "explanation": {
        "zh-Hant": "每一步必須沿所列方向；只有(b,a)不能代替(a,b)。不刪重複頂點或arc，因walk不是另要求edge唯一的trail。",
        "en": "Every step must follow its listed orientation;(b,a)cannot replace(a,b).Do not delete repeated vertices or arcs:a walk is not an additional edge-distinct trail requirement."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "回到原始資料與本步條件核對，不把單向推論誤稱等價。",
          "en": "Check against the original data and this step's premises; a one-way implication is not an equivalence."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S006",
      "uses": [
        "G001",
        "S005"
      ],
      "before": "ORIGINAL consecutive positions=[3, 4];ORIGINAL directed step=[3, 4]",
      "after": "EXACT oriented arc(3,4) present=是;reverse arc is a DIFFERENT lookup",
      "relation": "implies",
      "rule_id": "digraph_every_step_exact_orientation_not_reverse_edge",
      "conditions": [],
      "explanation": {
        "zh-Hant": "每一步必須沿所列方向；只有(b,a)不能代替(a,b)。不刪重複頂點或arc，因walk不是另要求edge唯一的trail。",
        "en": "Every step must follow its listed orientation;(b,a)cannot replace(a,b).Do not delete repeated vertices or arcs:a walk is not an additional edge-distinct trail requirement."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "回到原始資料與本步條件核對，不把單向推論誤稱等價。",
          "en": "Check against the original data and this step's premises; a one-way implication is not an equivalence."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S007",
      "uses": [
        "G001",
        "S006"
      ],
      "before": "ORIGINAL consecutive positions=[4, 5];ORIGINAL directed step=[4, 0]",
      "after": "EXACT oriented arc(4,0) present=是;reverse arc is a DIFFERENT lookup",
      "relation": "implies",
      "rule_id": "digraph_every_step_exact_orientation_not_reverse_edge",
      "conditions": [],
      "explanation": {
        "zh-Hant": "每一步必須沿所列方向；只有(b,a)不能代替(a,b)。不刪重複頂點或arc，因walk不是另要求edge唯一的trail。",
        "en": "Every step must follow its listed orientation;(b,a)cannot replace(a,b).Do not delete repeated vertices or arcs:a walk is not an additional edge-distinct trail requirement."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "回到原始資料與本步條件核對，不把單向推論誤稱等價。",
          "en": "Check against the original data and this step's premises; a one-way implication is not an equivalence."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S008",
      "uses": [
        "G001",
        "S007"
      ],
      "before": "ORIGINAL vertex list=[0, 1, 2, 3, 4, 0];COMPLETE successive-step audit rows=[[0, 1, 是], [1, 2, 是], [2, 3, 是], [3, 4, 是], [4, 0, 是]]",
      "after": "ALL oriented steps present=是;empty/singleton list has no step to refute;NOT an extra nonempty-walk,simple-path or trail certificate",
      "relation": "implies",
      "rule_id": "digraph_vacuous_step_conjunction_not_nonempty_walk_claim",
      "conditions": [],
      "explanation": {
        "zh-Hant": "此flag只核相鄰steps的合取。空列表或單點列表空真，不因此證成另外規定非空的walk慣例；也沒有要求走盡所有arc或不重訪。",
        "en": "The flag is only the conjunction of successive-step checks.Empty/singleton lists are vacuous and do not certify a separately required nonempty-walk convention.Neither full-edge coverage nor no-revisit conditions are imposed."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "回到原始資料與本步條件核對，不把單向推論誤稱等價。",
          "en": "Check against the original data and this step's premises; a one-way implication is not an equivalence."
        }
      },
      "arithmetic": null
    }
  ],
  "math_model": {
    "result": [
      [
        0,
        1,
        2,
        3,
        4,
        0
      ],
      [
        [
          0,
          1,
          true
        ],
        [
          1,
          2,
          true
        ],
        [
          2,
          3,
          true
        ],
        [
          3,
          4,
          true
        ],
        [
          4,
          0,
          true
        ]
      ],
      true,
      "edge_orientation_must_match"
    ]
  },
  "conclusion": {
    "canonical_value": "([0, 1, 2, 3, 4, 0], [[0, 1, 是], [1, 2, 是], [2, 3, 是], [3, 4, 是], [4, 0, 是]], 是, edge_orientation_must_match)",
    "explanation": {
      "zh-Hant": "依上列完整代值及條件核對得到原題答案；原題編號、格式與狀態保持不變。",
      "en": "The full substitutions and premise checks give the original answer; source identity,format and status are unchanged."
    }
  },
  "definition_note": {
    "zh-Hant": "沿用原題明示的論域、假設與來源 MKO 定義。本題已完成第二對話數理與中英語義覆核，並由原始參數逐題獨立重算模型、答案與每個算術步驟；原題仍為 candidate。",
    "en": "Use the original question domain, assumptions and cited MKO definitions. This item has second-context mathematical and bilingual review, with the model, answer and every arithmetic step independently recomputed from the original parameters; the source question remains a candidate."
  },
  "source": {
    "input_commit": "0f7be61e2c22317a4075561dc822c87d881a50db",
    "question_binding": {
      "batch_id": "batch-20261014-advance-20261108-r07-finite-directed-graph-foundations",
      "batch_path": "public/data/questions/batches/batch-20261014-advance-20261108-r07-finite-directed-graph-foundations/questions.jsonl",
      "batch_sha256": "b76dd0131fe7faeb6a32b6d736c48955db141a0c42218e36d7e584617fde48c5",
      "original_line": 65,
      "original_line_sha256": "6a1fc363c77f06fa5df66d66c218b19f831ba97c5a0621e2b9cf8ad75c284ffd",
      "question_compact_sha256": "363ee32f1793731a78a4ce6a184eaa850b29e30474a9eded6f17fb5559e9a5f8",
      "english_row_compact_sha256": "35461bcc28265a0cb85c37add2efec389b66085b939eec8d130384a6b989dfd0",
      "english_manifest_path": "public/data/i18n/editions/batch-20261014-advance-20261108-r07-finite-directed-graph-foundations.en.json",
      "english_rows_path": "public/data/i18n/questions/batch-20261014-advance-20261108-r07-finite-directed-graph-foundations.en.jsonl"
    },
    "mko_bindings": {
      "mko-finite-directed-graph": {
        "sha256": "09311b0ec711e3f02a16b1c332e69c9f718fe2a288f2005683d393695a41161b",
        "english_sha256": "1a9289ec7bd86c2ec776a919d938ee1c37455b7d8c5ec5c81e2293906e548c98",
        "original_path": "public/data/mko/finite-directed-graph.json",
        "english_path": "public/data/i18n/editions/mko-finite-directed-graph.en.json"
      }
    },
    "selected_manifest_sha256": "5233edba9654a6cffd8b6b2d83c932f82ded15f9c0b7c733bd049943e672acff",
    "selected_part_sha256": "f1ed3239c9185524aa4f0839ab4cfbe8f7d74200b283ea09e850a792f0178a3b",
    "original_candidate_sha256": "2552d6e755433de67e1de0a2e05859a4acad60083f1d81e7a8a3ea823cd1c3ce",
    "original_candidate_line_sha256": "2552d6e755433de67e1de0a2e05859a4acad60083f1d81e7a8a3ea823cd1c3ce"
  },
  "historical_source_state": {
    "review_state": {
      "derivation": "candidate_authored_and_locally_checked",
      "source_question_state": "candidate",
      "independent_AI_or_human_review": "NOT_PERFORMED",
      "formalization": "not_formalized",
      "Lean": "NOT_RUN"
    },
    "scope_note": {
      "zh-Hant": "來源綁定教學推導候選；精確核對不等於獨立AI／人工審查或一般形式證明。原題、答案、MKO、公式、AST與歷史不變。",
      "en": "Source-bound pedagogical derivation candidate.Exact checking is not independent AI/human review or general formal proof.Original questions,answers,MKOs,formulas,ASTs and history remain unchanged."
    },
    "label": "Frozen producer metadata; current per-question review is separate below."
  },
  "revision": {
    "id": "review-20261026-008-p41",
    "review_date": "2026-10-26",
    "owner_authorized_reader_publication": true,
    "scope": "One hundred sixty family prototypes and their mathematical/bilingual reasoning variants, stems, boundary statements and every distinct explanation shape were reviewed in a context independent of the producer; parameter substitutions, source bindings, full math models, both answer strings and every arithmetic step were independently reconstructed per question from the original parameters only, with negative controls. This grouped method does not claim a separate literal AI reading of every repeated sentence or an extra AI voter.",
    "review_receipts": {
      "semantic_review_sha256": "c6483ed1229af9183fe5c704a2627b1558ad9a31bfbb0d2ee2d5c1a1c299ab4d",
      "question_first_witness_sha256": "e81f9a560d630fcb23441146f008c4feca7aceab3ebe4de2cf1997c061375ef7"
    },
    "status": "second_context_reviewed",
    "mathematical_semantics": true,
    "bilingual_semantics": true,
    "steps_reviewed": 8,
    "method": "family_template_semantic_review_plus_independent_per_instance_reconstruction",
    "exact_question_first_check": {
      "model_sha256": "cf99d63ba4fa2095cfbdfa34950947f7ffcc7920113af384785e53e79381d301",
      "arithmetic_steps": 0
    },
    "uses_answer_as_premise": false,
    "human_review": "NOT_PERFORMED",
    "formalization": "not_formalized",
    "Lean": "NOT_RUN",
    "Canonical_truth_promotion": false,
    "authority": "Owner-authorized reviewed reader publication; original question/candidate states remain historical and unchanged."
  }
}
