{
  "schema_version": "ocme-reviewed-question-reader-v1",
  "question_id": "q-20261015-advance-20261117-r04-finite-product-topology-0076",
  "pilot_number": "R0052-26776",
  "number": 26776,
  "family_id": "qf-mod48-product-topology-boundary",
  "title": {
    "zh-Hant": "第 26776 題：有限乘積拓撲",
    "en": "Question 26776: Nonrectangle Opens, Invalid Factors and Pair Direction Have Different Typed Outputs"
  },
  "original_question": {
    "schema_version": "ocme-question-v0.1",
    "id": "q-20261015-advance-20261117-r04-finite-product-topology-0076",
    "batch_id": "batch-20261015-advance-20261117-r04-finite-product-topology-foundations",
    "language": "zh-Hant",
    "source_mko_ids": [
      "mko-finite-product-topology"
    ],
    "title_zh": "有限乘積拓撲",
    "stem_zh": "完整finite factor topologies、Cartesian carrier與rectangle-union生成責任。操作=product-topology-boundary；資料={\"mode\":\"nonrectangle_open\",\"model\":{\"x_points\":[0,1],\"x_topology\":[[],[0],[1],[0,1]],\"y_points\":[100,101],\"y_topology\":[[],[100],[101],[100,101]],\"candidate_open\":[[0,100],[1,101]]}}。請依 exact_ordered_tuple_declared_by_interface 欄序回答。",
    "answer": {
      "kind": "expression",
      "value": "(nonrectangle_open, [[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [1, 101]], 是, 否, [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []], open_union_of_rectangles_need_not_be_one_rectangle)",
      "explanation_zh": "Wave6第十一層核對=(nonrectangle_open, [[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [1, 101]], 是, 否, [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []], open_union_of_rectangles_need_not_be_one_rectangle)；依完整明示資料獨立重算；projections與coordinate criterion在完整product topology上核對；basic rectangles不等於全部opens；finite product等於box不得外推到infinite product。"
    },
    "difficulty": {
      "band": "undergraduate_core",
      "level": 1,
      "skills": [
        "有限乘積拓撲"
      ]
    },
    "variant": {
      "family_id": "qf-mod48-product-topology-boundary",
      "seed": 202611174076,
      "parameters": {
        "mode": "nonrectangle_open",
        "model": {
          "x_points": [
            0,
            1
          ],
          "x_topology": [
            [],
            [
              0
            ],
            [
              1
            ],
            [
              0,
              1
            ]
          ],
          "y_points": [
            100,
            101
          ],
          "y_topology": [
            [],
            [
              100
            ],
            [
              101
            ],
            [
              100,
              101
            ]
          ],
          "candidate_open": [
            [
              0,
              100
            ],
            [
              1,
              101
            ]
          ]
        },
        "domain": "Complete_finite_product_topology",
        "operation": "product-topology-boundary",
        "semantic_template": "product-topology-boundary|{mode:\"nonrectangle_open\",model:{candidate_open:[[0,100],[1,101]],x_points:[0,1],x_topology:[[],[0,1],[0],[1]],y_points:[100,101],y_topology:[[],[100,101],[100],[101]]}}"
      }
    },
    "verification": {
      "status": "candidate",
      "checks": [
        "producer_exact_finite_or_symbolic_model",
        "producer_source_snapshot_check",
        "producer_substantive_template_deduplication",
        "producer_json_schema"
      ],
      "warning_zh": "候選須主端重算；不構成一般series、uniform-limit或topology定理證明、人工審定、Lean或Evidence。"
    },
    "provenance": {
      "generator_role": "question_producer",
      "generator_model": "model_unknown",
      "generated_at": "2026-10-15",
      "contract_version": "ocme-question-factory-v0.1"
    }
  },
  "original_english_edition": {
    "schema_version": "ocme-question-localization-v0.1",
    "question_id": "q-20261015-advance-20261117-r04-finite-product-topology-0076",
    "batch_id": "batch-20261015-advance-20261117-r04-finite-product-topology-foundations",
    "locale": "en",
    "translation_state": "ai_candidate",
    "source": {
      "question_sha256": "557ff82e3ae5d584bd87d6136bf80df312b2a4db2d117ac6bf3046a75565bc29",
      "family_id": "qf-mod48-product-topology-boundary",
      "seed": 202611174076,
      "semantic_template": "product-topology-boundary|{mode:\"nonrectangle_open\",model:{candidate_open:[[0,100],[1,101]],x_points:[0,1],x_topology:[[],[0,1],[0],[1]],y_points:[100,101],y_topology:[[],[100,101],[100],[101]]}}"
    },
    "fields": {
      "title": "Nonrectangle Opens, Invalid Factors and Pair Direction Have Different Typed Outputs",
      "stem": "Use mode=nonrectangle_open with the complete declared model={\"x_points\":[0,1],\"x_topology\":[[],[0],[1],[0,1]],\"y_points\":[100,101],\"y_topology\":[[],[100],[101],[100,101]],\"candidate_open\":[[0,100],[1,101]]}. Give (mode, product_points, candidate_open, open, basic_rectangle, basic_rectangles, certificate).",
      "answer": {
        "kind": "expression",
        "value": "(nonrectangle_open, [[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [1, 101]], Yes, No, [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []], open_union_of_rectangles_need_not_be_one_rectangle)",
        "explanation": "A nonrectangle witness must really be open but not a single rectangle. Invalid-factor mode retains each factor validity/error separately. Finite product and box topologies coincide here, without extrapolation to infinite products. A typed ordered pair is not identified with its reversal, which may not lie in the same product carrier. The exact result, retaining the requested order, is (nonrectangle_open, [[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [1, 101]], Yes, No, [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []], open_union_of_rectangles_need_not_be_one_rectangle)."
      },
      "skills": [
        "Nonrectangle Opens, Invalid Factors and Pair Direction Have Different Typed Outputs"
      ],
      "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": "完整finite factor topologies、Cartesian carrier與rectangle-union生成責任。操作=product-topology-boundary；資料={\"mode\":\"nonrectangle_open\",\"model\":{\"x_points\":[0,1],\"x_topology\":[[],[0],[1],[0,1]],\"y_points\":[100,101],\"y_topology\":[[],[100],[101],[100,101]],\"candidate_open\":[[0,100],[1,101]]}}。請依 exact_ordered_tuple_declared_by_interface 欄序回答。",
        "en": "Use mode=nonrectangle_open with the complete declared model={\"x_points\":[0,1],\"x_topology\":[[],[0],[1],[0,1]],\"y_points\":[100,101],\"y_topology\":[[],[100],[101],[100,101]],\"candidate_open\":[[0,100],[1,101]]}. Give (mode, product_points, candidate_open, open, basic_rectangle, basic_rectangles, certificate)."
      }
    }
  ],
  "steps": [
    {
      "id": "S001",
      "uses": [
        "G001"
      ],
      "before": "source roles = [product-topology-boundary]",
      "after": "derived = [[mode, points, candidate_open, open, rectangle, rectangles, certificate]]",
      "relation": "implies",
      "rule_id": "source_ordered_fields_without_JS",
      "conditions": [],
      "explanation": {
        "zh-Hant": "直接列出此操作及mode的完整來源欄序，不需JavaScript；布林、字串與null角色保持區別，不補欄或以答案形狀猜介面。",
        "en": "List this operation/mode exact source field order without JavaScript.Keep Boolean,string and null roles distinct;do not pad fields or infer the interface from answer shape."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S002",
      "uses": [
        "G001",
        "S001"
      ],
      "before": "source roles = [product ORIGINAL X, [0, 1], [[], [0], [1], [0, 1]], 否]",
      "after": "derived = [[0, 1], [[], [0, 1], [0], [1]], [[0, 0, 0, 0, 是, 是], [0, 1, 3, 0, 是, 是], [0, 2, 1, 0, 是, 是], [0, 3, 2, 0, 是, 是], [1, 0, 3, 0, 是, 是], [1, 1, 3, 3, 是, 是], [1, 2, 3, 1, 是, 是], [1, 3, 3, 2, 是, 是], [2, 0, 1, 0, 是, 是], [2, 1, 3, 1, 是, 是], [2, 2, 1, 1, 是, 是], [2, 3, 3, 0, 是, 是], [3, 0, 2, 0, 是, 是], [3, 1, 3, 2, 是, 是], [3, 2, 3, 0, 是, 是], [3, 3, 2, 2, 是, 是]]]",
      "relation": "implies",
      "rule_id": "Topology_full_typed_carrier_and_ALL_pair_axioms",
      "conditions": [],
      "explanation": {
        "zh-Hant": "保留JSON型別，set與open族依來源English序。逐全部open pair驗union及intersection，含空集與全集；有限族的二元閉包給任意union閉包，不由抽樣認定topology。",
        "en": "Retain JSON types and English source ordering of sets and open families.Check union/intersection for every open pair and empty/full sets;in a finite family binary closure gives arbitrary-union closure,not sampled qualification."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S003",
      "uses": [
        "G001",
        "S002"
      ],
      "before": "source roles = [product ORIGINAL Y, [100, 101], [[], [100], [101], [100, 101]], 否]",
      "after": "derived = [[100, 101], [[], [100, 101], [100], [101]], [[0, 0, 0, 0, 是, 是], [0, 1, 3, 0, 是, 是], [0, 2, 1, 0, 是, 是], [0, 3, 2, 0, 是, 是], [1, 0, 3, 0, 是, 是], [1, 1, 3, 3, 是, 是], [1, 2, 3, 1, 是, 是], [1, 3, 3, 2, 是, 是], [2, 0, 1, 0, 是, 是], [2, 1, 3, 1, 是, 是], [2, 2, 1, 1, 是, 是], [2, 3, 3, 0, 是, 是], [3, 0, 2, 0, 是, 是], [3, 1, 3, 2, 是, 是], [3, 2, 3, 0, 是, 是], [3, 3, 2, 2, 是, 是]]]",
      "relation": "implies",
      "rule_id": "Topology_full_typed_carrier_and_ALL_pair_axioms",
      "conditions": [],
      "explanation": {
        "zh-Hant": "保留JSON型別，set與open族依來源English序。逐全部open pair驗union及intersection，含空集與全集；有限族的二元閉包給任意union閉包，不由抽樣認定topology。",
        "en": "Retain JSON types and English source ordering of sets and open families.Check union/intersection for every open pair and empty/full sets;in a finite family binary closure gives arbitrary-union closure,not sampled qualification."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S004",
      "uses": [
        "G001",
        "S003"
      ],
      "before": "source roles = [[0, 1], [[], [0, 1], [0], [1]], [100, 101], [[], [100, 101], [100], [101]]]",
      "after": "derived = [[[0, 100], [0, 101], [1, 100], [1, 101]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []]]",
      "relation": "implies",
      "rule_id": "Product_typed_cartesian_carrier_AND_ALL_basic_rectangles",
      "conditions": [],
      "explanation": {
        "zh-Hant": "列全部typed ordered pairs及全部U×V基底矩形，重複空矩形合併；rectangle界限是來源計算profile，不是一般定理限制。",
        "en": "List every typed ordered pair and every basic rectangle U times V,deduplicating empty rectangles.The rectangle bound is a source-computation profile,not a theorem limitation."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S005",
      "uses": [
        "G001",
        "S004"
      ],
      "before": "source roles = [0, [[0, 100], [0, 101], [1, 100], [1, 101]], [[]]]",
      "after": "derived = [[[[0, 100], [0, 101], [1, 100], [1, 101]], []]]",
      "relation": "implies",
      "rule_id": "Product_EACH_rectangle_ALL_unions_induction",
      "conditions": [],
      "explanation": {
        "zh-Hant": "加入此矩形時保留舊union並加入每個舊union與它的聯集；歸納後正是全部rectangle子族的union，不能只把矩形叫成所有開集。",
        "en": "When adding this rectangle retain every old union and its union with the rectangle.Inductively this gives all unions of rectangle subfamilies,not just rectangles as opens."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S006",
      "uses": [
        "G001",
        "S005"
      ],
      "before": "source roles = [1, [[0, 100], [0, 101]], [[[0, 100], [0, 101], [1, 100], [1, 101]], []]]",
      "after": "derived = [[[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101]], []]]",
      "relation": "implies",
      "rule_id": "Product_EACH_rectangle_ALL_unions_induction",
      "conditions": [],
      "explanation": {
        "zh-Hant": "加入此矩形時保留舊union並加入每個舊union與它的聯集；歸納後正是全部rectangle子族的union，不能只把矩形叫成所有開集。",
        "en": "When adding this rectangle retain every old union and its union with the rectangle.Inductively this gives all unions of rectangle subfamilies,not just rectangles as opens."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S007",
      "uses": [
        "G001",
        "S006"
      ],
      "before": "source roles = [2, [[0, 100], [1, 100]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101]], []]]",
      "after": "derived = [[[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], []]]",
      "relation": "implies",
      "rule_id": "Product_EACH_rectangle_ALL_unions_induction",
      "conditions": [],
      "explanation": {
        "zh-Hant": "加入此矩形時保留舊union並加入每個舊union與它的聯集；歸納後正是全部rectangle子族的union，不能只把矩形叫成所有開集。",
        "en": "When adding this rectangle retain every old union and its union with the rectangle.Inductively this gives all unions of rectangle subfamilies,not just rectangles as opens."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S008",
      "uses": [
        "G001",
        "S007"
      ],
      "before": "source roles = [3, [[0, 100]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], []]]",
      "after": "derived = [[[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], []]]",
      "relation": "implies",
      "rule_id": "Product_EACH_rectangle_ALL_unions_induction",
      "conditions": [],
      "explanation": {
        "zh-Hant": "加入此矩形時保留舊union並加入每個舊union與它的聯集；歸納後正是全部rectangle子族的union，不能只把矩形叫成所有開集。",
        "en": "When adding this rectangle retain every old union and its union with the rectangle.Inductively this gives all unions of rectangle subfamilies,not just rectangles as opens."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S009",
      "uses": [
        "G001",
        "S008"
      ],
      "before": "source roles = [4, [[0, 101], [1, 101]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], []]]",
      "after": "derived = [[[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], []]]",
      "relation": "implies",
      "rule_id": "Product_EACH_rectangle_ALL_unions_induction",
      "conditions": [],
      "explanation": {
        "zh-Hant": "加入此矩形時保留舊union並加入每個舊union與它的聯集；歸納後正是全部rectangle子族的union，不能只把矩形叫成所有開集。",
        "en": "When adding this rectangle retain every old union and its union with the rectangle.Inductively this gives all unions of rectangle subfamilies,not just rectangles as opens."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S010",
      "uses": [
        "G001",
        "S009"
      ],
      "before": "source roles = [5, [[0, 101]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], []]]",
      "after": "derived = [[[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], [[0, 101]], []]]",
      "relation": "implies",
      "rule_id": "Product_EACH_rectangle_ALL_unions_induction",
      "conditions": [],
      "explanation": {
        "zh-Hant": "加入此矩形時保留舊union並加入每個舊union與它的聯集；歸納後正是全部rectangle子族的union，不能只把矩形叫成所有開集。",
        "en": "When adding this rectangle retain every old union and its union with the rectangle.Inductively this gives all unions of rectangle subfamilies,not just rectangles as opens."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S011",
      "uses": [
        "G001",
        "S010"
      ],
      "before": "source roles = [6, [[1, 100], [1, 101]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], [[0, 101]], []]]",
      "after": "derived = [[[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100], [1, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 100], [1, 101]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], []]]",
      "relation": "implies",
      "rule_id": "Product_EACH_rectangle_ALL_unions_induction",
      "conditions": [],
      "explanation": {
        "zh-Hant": "加入此矩形時保留舊union並加入每個舊union與它的聯集；歸納後正是全部rectangle子族的union，不能只把矩形叫成所有開集。",
        "en": "When adding this rectangle retain every old union and its union with the rectangle.Inductively this gives all unions of rectangle subfamilies,not just rectangles as opens."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S012",
      "uses": [
        "G001",
        "S011"
      ],
      "before": "source roles = [7, [[1, 100]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100], [1, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 100], [1, 101]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], []]]",
      "after": "derived = [[[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100], [1, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 100], [1, 101]], [[0, 101], [1, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], []]]",
      "relation": "implies",
      "rule_id": "Product_EACH_rectangle_ALL_unions_induction",
      "conditions": [],
      "explanation": {
        "zh-Hant": "加入此矩形時保留舊union並加入每個舊union與它的聯集；歸納後正是全部rectangle子族的union，不能只把矩形叫成所有開集。",
        "en": "When adding this rectangle retain every old union and its union with the rectangle.Inductively this gives all unions of rectangle subfamilies,not just rectangles as opens."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S013",
      "uses": [
        "G001",
        "S012"
      ],
      "before": "source roles = [8, [[1, 101]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100], [1, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 100], [1, 101]], [[0, 101], [1, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], []]]",
      "after": "derived = [[[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100], [1, 101]], [[0, 100], [1, 100]], [[0, 100], [1, 101]], [[0, 100]], [[0, 101], [1, 100], [1, 101]], [[0, 101], [1, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []]]",
      "relation": "implies",
      "rule_id": "Product_EACH_rectangle_ALL_unions_induction",
      "conditions": [],
      "explanation": {
        "zh-Hant": "加入此矩形時保留舊union並加入每個舊union與它的聯集；歸納後正是全部rectangle子族的union，不能只把矩形叫成所有開集。",
        "en": "When adding this rectangle retain every old union and its union with the rectangle.Inductively this gives all unions of rectangle subfamilies,not just rectangles as opens."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S014",
      "uses": [
        "G001",
        "S013"
      ],
      "before": "source roles = [9, [], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100], [1, 101]], [[0, 100], [1, 100]], [[0, 100], [1, 101]], [[0, 100]], [[0, 101], [1, 100], [1, 101]], [[0, 101], [1, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []]]",
      "after": "derived = [[[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100], [1, 101]], [[0, 100], [1, 100]], [[0, 100], [1, 101]], [[0, 100]], [[0, 101], [1, 100], [1, 101]], [[0, 101], [1, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []]]",
      "relation": "implies",
      "rule_id": "Product_EACH_rectangle_ALL_unions_induction",
      "conditions": [],
      "explanation": {
        "zh-Hant": "加入此矩形時保留舊union並加入每個舊union與它的聯集；歸納後正是全部rectangle子族的union，不能只把矩形叫成所有開集。",
        "en": "When adding this rectangle retain every old union and its union with the rectangle.Inductively this gives all unions of rectangle subfamilies,not just rectangles as opens."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S015",
      "uses": [
        "G001",
        "S014"
      ],
      "before": "source roles = [product GENERATED all-union topology, [[0, 100], [0, 101], [1, 100], [1, 101]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100], [1, 101]], [[0, 100], [1, 100]], [[0, 100], [1, 101]], [[0, 100]], [[0, 101], [1, 100], [1, 101]], [[0, 101], [1, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []], 是]",
      "after": "derived = [[[0, 100], [0, 101], [1, 100], [1, 101]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100], [1, 101]], [[0, 100], [1, 100]], [[0, 100], [1, 101]], [[0, 100]], [[0, 101], [1, 100], [1, 101]], [[0, 101], [1, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []], [[0, 0, 15, 15, 是, 是], [0, 1, 15, 7, 是, 是], [0, 2, 15, 11, 是, 是], [0, 3, 15, 3, 是, 是], [0, 4, 15, 13, 是, 是], [0, 5, 15, 5, 是, 是], [0, 6, 15, 9, 是, 是], [0, 7, 15, 1, 是, 是], [0, 8, 15, 14, 是, 是], [0, 9, 15, 6, 是, 是], [0, 10, 15, 10, 是, 是], [0, 11, 15, 2, 是, 是], [0, 12, 15, 12, 是, 是], [0, 13, 15, 4, 是, 是], [0, 14, 15, 8, 是, 是], [0, 15, 15, 0, 是, 是], [1, 0, 15, 7, 是, 是], [1, 1, 7, 7, 是, 是], [1, 2, 15, 3, 是, 是], [1, 3, 7, 3, 是, 是], [1, 4, 15, 5, 是, 是], [1, 5, 7, 5, 是, 是], [1, 6, 15, 1, 是, 是], [1, 7, 7, 1, 是, 是], [1, 8, 15, 6, 是, 是], [1, 9, 7, 6, 是, 是], [1, 10, 15, 2, 是, 是], [1, 11, 7, 2, 是, 是], [1, 12, 15, 4, 是, 是], [1, 13, 7, 4, 是, 是], [1, 14, 15, 0, 是, 是], [1, 15, 7, 0, 是, 是], [2, 0, 15, 11, 是, 是], [2, 1, 15, 3, 是, 是], [2, 2, 11, 11, 是, 是], [2, 3, 11, 3, 是, 是], [2, 4, 15, 9, 是, 是], [2, 5, 15, 1, 是, 是], [2, 6, 11, 9, 是, 是], [2, 7, 11, 1, 是, 是], [2, 8, 15, 10, 是, 是], [2, 9, 15, 2, 是, 是], [2, 10, 11, 10, 是, 是], [2, 11, 11, 2, 是, 是], [2, 12, 15, 8, 是, 是], [2, 13, 15, 0, 是, 是], [2, 14, 11, 8, 是, 是], [2, 15, 11, 0, 是, 是], [3, 0, 15, 3, 是, 是], [3, 1, 7, 3, 是, 是], [3, 2, 11, 3, 是, 是], [3, 3, 3, 3, 是, 是], [3, 4, 15, 1, 是, 是], [3, 5, 7, 1, 是, 是], [3, 6, 11, 1, 是, 是], [3, 7, 3, 1, 是, 是], [3, 8, 15, 2, 是, 是], [3, 9, 7, 2, 是, 是], [3, 10, 11, 2, 是, 是], [3, 11, 3, 2, 是, 是], [3, 12, 15, 0, 是, 是], [3, 13, 7, 0, 是, 是], [3, 14, 11, 0, 是, 是], [3, 15, 3, 0, 是, 是], [4, 0, 15, 13, 是, 是], [4, 1, 15, 5, 是, 是], [4, 2, 15, 9, 是, 是], [4, 3, 15, 1, 是, 是], [4, 4, 13, 13, 是, 是], [4, 5, 13, 5, 是, 是], [4, 6, 13, 9, 是, 是], [4, 7, 13, 1, 是, 是], [4, 8, 15, 12, 是, 是], [4, 9, 15, 4, 是, 是], [4, 10, 15, 8, 是, 是], [4, 11, 15, 0, 是, 是], [4, 12, 13, 12, 是, 是], [4, 13, 13, 4, 是, 是], [4, 14, 13, 8, 是, 是], [4, 15, 13, 0, 是, 是], [5, 0, 15, 5, 是, 是], [5, 1, 7, 5, 是, 是], [5, 2, 15, 1, 是, 是], [5, 3, 7, 1, 是, 是], [5, 4, 13, 5, 是, 是], [5, 5, 5, 5, 是, 是], [5, 6, 13, 1, 是, 是], [5, 7, 5, 1, 是, 是], [5, 8, 15, 4, 是, 是], [5, 9, 7, 4, 是, 是], [5, 10, 15, 0, 是, 是], [5, 11, 7, 0, 是, 是], [5, 12, 13, 4, 是, 是], [5, 13, 5, 4, 是, 是], [5, 14, 13, 0, 是, 是], [5, 15, 5, 0, 是, 是], [6, 0, 15, 9, 是, 是], [6, 1, 15, 1, 是, 是], [6, 2, 11, 9, 是, 是], [6, 3, 11, 1, 是, 是], [6, 4, 13, 9, 是, 是], [6, 5, 13, 1, 是, 是], [6, 6, 9, 9, 是, 是], [6, 7, 9, 1, 是, 是], [6, 8, 15, 8, 是, 是], [6, 9, 15, 0, 是, 是], [6, 10, 11, 8, 是, 是], [6, 11, 11, 0, 是, 是], [6, 12, 13, 8, 是, 是], [6, 13, 13, 0, 是, 是], [6, 14, 9, 8, 是, 是], [6, 15, 9, 0, 是, 是], [7, 0, 15, 1, 是, 是], [7, 1, 7, 1, 是, 是], [7, 2, 11, 1, 是, 是], [7, 3, 3, 1, 是, 是], [7, 4, 13, 1, 是, 是], [7, 5, 5, 1, 是, 是], [7, 6, 9, 1, 是, 是], [7, 7, 1, 1, 是, 是], [7, 8, 15, 0, 是, 是], [7, 9, 7, 0, 是, 是], [7, 10, 11, 0, 是, 是], [7, 11, 3, 0, 是, 是], [7, 12, 13, 0, 是, 是], [7, 13, 5, 0, 是, 是], [7, 14, 9, 0, 是, 是], [7, 15, 1, 0, 是, 是], [8, 0, 15, 14, 是, 是], [8, 1, 15, 6, 是, 是], [8, 2, 15, 10, 是, 是], [8, 3, 15, 2, 是, 是], [8, 4, 15, 12, 是, 是], [8, 5, 15, 4, 是, 是], [8, 6, 15, 8, 是, 是], [8, 7, 15, 0, 是, 是], [8, 8, 14, 14, 是, 是], [8, 9, 14, 6, 是, 是], [8, 10, 14, 10, 是, 是], [8, 11, 14, 2, 是, 是], [8, 12, 14, 12, 是, 是], [8, 13, 14, 4, 是, 是], [8, 14, 14, 8, 是, 是], [8, 15, 14, 0, 是, 是], [9, 0, 15, 6, 是, 是], [9, 1, 7, 6, 是, 是], [9, 2, 15, 2, 是, 是], [9, 3, 7, 2, 是, 是], [9, 4, 15, 4, 是, 是], [9, 5, 7, 4, 是, 是], [9, 6, 15, 0, 是, 是], [9, 7, 7, 0, 是, 是], [9, 8, 14, 6, 是, 是], [9, 9, 6, 6, 是, 是], [9, 10, 14, 2, 是, 是], [9, 11, 6, 2, 是, 是], [9, 12, 14, 4, 是, 是], [9, 13, 6, 4, 是, 是], [9, 14, 14, 0, 是, 是], [9, 15, 6, 0, 是, 是], [10, 0, 15, 10, 是, 是], [10, 1, 15, 2, 是, 是], [10, 2, 11, 10, 是, 是], [10, 3, 11, 2, 是, 是], [10, 4, 15, 8, 是, 是], [10, 5, 15, 0, 是, 是], [10, 6, 11, 8, 是, 是], [10, 7, 11, 0, 是, 是], [10, 8, 14, 10, 是, 是], [10, 9, 14, 2, 是, 是], [10, 10, 10, 10, 是, 是], [10, 11, 10, 2, 是, 是], [10, 12, 14, 8, 是, 是], [10, 13, 14, 0, 是, 是], [10, 14, 10, 8, 是, 是], [10, 15, 10, 0, 是, 是], [11, 0, 15, 2, 是, 是], [11, 1, 7, 2, 是, 是], [11, 2, 11, 2, 是, 是], [11, 3, 3, 2, 是, 是], [11, 4, 15, 0, 是, 是], [11, 5, 7, 0, 是, 是], [11, 6, 11, 0, 是, 是], [11, 7, 3, 0, 是, 是], [11, 8, 14, 2, 是, 是], [11, 9, 6, 2, 是, 是], [11, 10, 10, 2, 是, 是], [11, 11, 2, 2, 是, 是], [11, 12, 14, 0, 是, 是], [11, 13, 6, 0, 是, 是], [11, 14, 10, 0, 是, 是], [11, 15, 2, 0, 是, 是], [12, 0, 15, 12, 是, 是], [12, 1, 15, 4, 是, 是], [12, 2, 15, 8, 是, 是], [12, 3, 15, 0, 是, 是], [12, 4, 13, 12, 是, 是], [12, 5, 13, 4, 是, 是], [12, 6, 13, 8, 是, 是], [12, 7, 13, 0, 是, 是], [12, 8, 14, 12, 是, 是], [12, 9, 14, 4, 是, 是], [12, 10, 14, 8, 是, 是], [12, 11, 14, 0, 是, 是], [12, 12, 12, 12, 是, 是], [12, 13, 12, 4, 是, 是], [12, 14, 12, 8, 是, 是], [12, 15, 12, 0, 是, 是], [13, 0, 15, 4, 是, 是], [13, 1, 7, 4, 是, 是], [13, 2, 15, 0, 是, 是], [13, 3, 7, 0, 是, 是], [13, 4, 13, 4, 是, 是], [13, 5, 5, 4, 是, 是], [13, 6, 13, 0, 是, 是], [13, 7, 5, 0, 是, 是], [13, 8, 14, 4, 是, 是], [13, 9, 6, 4, 是, 是], [13, 10, 14, 0, 是, 是], [13, 11, 6, 0, 是, 是], [13, 12, 12, 4, 是, 是], [13, 13, 4, 4, 是, 是], [13, 14, 12, 0, 是, 是], [13, 15, 4, 0, 是, 是], [14, 0, 15, 8, 是, 是], [14, 1, 15, 0, 是, 是], [14, 2, 11, 8, 是, 是], [14, 3, 11, 0, 是, 是], [14, 4, 13, 8, 是, 是], [14, 5, 13, 0, 是, 是], [14, 6, 9, 8, 是, 是], [14, 7, 9, 0, 是, 是], [14, 8, 14, 8, 是, 是], [14, 9, 14, 0, 是, 是], [14, 10, 10, 8, 是, 是], [14, 11, 10, 0, 是, 是], [14, 12, 12, 8, 是, 是], [14, 13, 12, 0, 是, 是], [14, 14, 8, 8, 是, 是], [14, 15, 8, 0, 是, 是], [15, 0, 15, 0, 是, 是], [15, 1, 7, 0, 是, 是], [15, 2, 11, 0, 是, 是], [15, 3, 3, 0, 是, 是], [15, 4, 13, 0, 是, 是], [15, 5, 5, 0, 是, 是], [15, 6, 9, 0, 是, 是], [15, 7, 1, 0, 是, 是], [15, 8, 14, 0, 是, 是], [15, 9, 6, 0, 是, 是], [15, 10, 10, 0, 是, 是], [15, 11, 2, 0, 是, 是], [15, 12, 12, 0, 是, 是], [15, 13, 4, 0, 是, 是], [15, 14, 8, 0, 是, 是], [15, 15, 0, 0, 是, 是]]]",
      "relation": "implies",
      "rule_id": "Topology_full_typed_carrier_and_ALL_pair_axioms",
      "conditions": [],
      "explanation": {
        "zh-Hant": "保留JSON型別，set與open族依來源English序。逐全部open pair驗union及intersection，含空集與全集；有限族的二元閉包給任意union閉包，不由抽樣認定topology。",
        "en": "Retain JSON types and English source ordering of sets and open families.Check union/intersection for every open pair and empty/full sets;in a finite family binary closure gives arbitrary-union closure,not sampled qualification."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S016",
      "uses": [
        "G001",
        "S015"
      ],
      "before": "source roles = [[[0, 100], [1, 101]], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101], [1, 100]], [[0, 100], [0, 101], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100], [1, 101]], [[0, 100], [1, 100]], [[0, 100], [1, 101]], [[0, 100]], [[0, 101], [1, 100], [1, 101]], [[0, 101], [1, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []], [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []]]",
      "after": "derived = [是, 否]",
      "relation": "implies",
      "rule_id": "Product_ACTUAL_open_union_NOT_single_rectangle",
      "conditions": [],
      "explanation": {
        "zh-Hant": "已在完整union topology中找到candidate，但在全部basic rectangles中找不到；這是實際非矩形開集，不是猜測圖形。",
        "en": "The candidate belongs to the complete union topology but to none of the basic rectangles.This is an actual open nonrectangle,not a geometric guess."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "反查原題的完整資料、型別、欄序與本步條件；有限核對不升格為無限定理的形式證明。",
          "en": "Reverse-check the complete original data,types,field order and premises;finite audits are not formal proofs of infinite theorems."
        }
      },
      "arithmetic": null
    }
  ],
  "math_model": {
    "result": [
      "nonrectangle_open",
      [
        [
          0,
          100
        ],
        [
          0,
          101
        ],
        [
          1,
          100
        ],
        [
          1,
          101
        ]
      ],
      [
        [
          0,
          100
        ],
        [
          1,
          101
        ]
      ],
      true,
      false,
      [
        [
          [
            0,
            100
          ],
          [
            0,
            101
          ],
          [
            1,
            100
          ],
          [
            1,
            101
          ]
        ],
        [
          [
            0,
            100
          ],
          [
            0,
            101
          ]
        ],
        [
          [
            0,
            100
          ],
          [
            1,
            100
          ]
        ],
        [
          [
            0,
            100
          ]
        ],
        [
          [
            0,
            101
          ],
          [
            1,
            101
          ]
        ],
        [
          [
            0,
            101
          ]
        ],
        [
          [
            1,
            100
          ],
          [
            1,
            101
          ]
        ],
        [
          [
            1,
            100
          ]
        ],
        [
          [
            1,
            101
          ]
        ],
        []
      ],
      "open_union_of_rectangles_need_not_be_one_rectangle"
    ]
  },
  "conclusion": {
    "canonical_value": "(nonrectangle_open, [[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [1, 101]], 是, 否, [[[0, 100], [0, 101], [1, 100], [1, 101]], [[0, 100], [0, 101]], [[0, 100], [1, 100]], [[0, 100]], [[0, 101], [1, 101]], [[0, 101]], [[1, 100], [1, 101]], [[1, 100]], [[1, 101]], []], open_union_of_rectangles_need_not_be_one_rectangle)",
    "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-20261015-advance-20261117-r04-finite-product-topology-foundations",
      "batch_path": "public/data/questions/batches/batch-20261015-advance-20261117-r04-finite-product-topology-foundations/questions.jsonl",
      "batch_sha256": "7c583ca9257d1982c732625797b37ed80cad98fb9918088d09335970ac494481",
      "original_line": 76,
      "original_line_sha256": "cd5ba1e7c2b8390fcb5ef85a921065abda7e5fde183be0100b083fe8c8b97024",
      "question_compact_sha256": "557ff82e3ae5d584bd87d6136bf80df312b2a4db2d117ac6bf3046a75565bc29",
      "english_row_compact_sha256": "21461bee74b4a65760cc5046cc61306e86a0583d3028b82a57b2999c7534f827",
      "english_manifest_path": "public/data/i18n/editions/batch-20261015-advance-20261117-r04-finite-product-topology-foundations.en.json",
      "english_rows_path": "public/data/i18n/questions/batch-20261015-advance-20261117-r04-finite-product-topology-foundations.en.jsonl"
    },
    "mko_bindings": {
      "mko-finite-product-topology": {
        "sha256": "9650dd3cf37e29ce4d8b2c6600ead8cb5c0ac577af1f7b69a0aa987341b02d5a",
        "english_sha256": "0010f081607335f5f72fb187f7825140a790a02f8d03038feafa566885063421",
        "original_path": "public/data/mko/finite-product-topology.json",
        "english_path": "public/data/i18n/editions/mko-finite-product-topology.en.json"
      }
    },
    "selected_manifest_sha256": "5233edba9654a6cffd8b6b2d83c932f82ded15f9c0b7c733bd049943e672acff",
    "selected_part_sha256": "a3def7368821a4d3dc7757fefd3c4a099713f8de8fb8e6f3434025e9d7b5a6d0",
    "original_candidate_sha256": "b64c276bb47bb8a510e8a2b2b1dc71e0802aaaab474e0f4860952aa424d50432",
    "original_candidate_line_sha256": "b64c276bb47bb8a510e8a2b2b1dc71e0802aaaab474e0f4860952aa424d50432"
  },
  "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-010-p53",
    "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": "729b25cbf6bf5cb1d07a21a511ae216ec5fdd54a4a7aa2f7c21156b81ff37252",
      "question_first_witness_sha256": "d1ab788770eaad04f986986e65afb0d55791e8a8c0d747e9a2b499f79fe78df2"
    },
    "status": "second_context_reviewed",
    "mathematical_semantics": true,
    "bilingual_semantics": true,
    "steps_reviewed": 16,
    "method": "family_template_semantic_review_plus_independent_per_instance_reconstruction",
    "exact_question_first_check": {
      "model_sha256": "8e8aa5e4d5fcea75e79d9b69cb17ee20b18bcd7d998a7e9c67981bd5b3623da7",
      "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."
  }
}
