{
  "schema_version": "ocme-derivation-reader-v1",
  "guide_id": "derivation-mko-neighborhood-01",
  "mko_id": "mko-neighborhood",
  "title": {
    "zh-Hant": "鄰域：在四點拓撲中搜尋開集見證並列出全部鄰域",
    "en": "Neighborhood: searching for open witnesses and listing all neighborhoods in a four-point topology"
  },
  "contract": {
    "schema_version": "ocme-derivation-guide-v0.1",
    "guide_id": "derivation-mko-neighborhood-01",
    "source": {
      "mko_id": "mko-neighborhood",
      "commit": "b28a5edbd46279b1db2a3f3f48bb3f447e18899f",
      "sha256": "175c50e3f4cbb3dfa266c387a13492faeffdacb3df5d699b2ad94f7ea5f91ef1",
      "english_sha256": "1822e364cadbcc3eec3cbc1611d4b6cbc00624e445f49f039db873791a78d69d"
    },
    "mode": "worked_example",
    "audience_prerequisites": [
      "subset_def",
      "set_operations_def",
      "finite_counting_basics",
      "nat_induction"
    ],
    "goal": {
      "zh-Hant": "設 X={1,2,3,4}，τ={∅,{1},{1,2},{3,4},{1,3,4},X}。判定 N1={1,2,3} 與 N2={2,3,4} 是否為點 2 的鄰域；證明在有限拓撲中，點 x 的鄰域恰是包含 O_x（含 x 的全部開集之交）的子集，據此列出點 1、2、3、4 的全部鄰域；證明鄰域向上封閉；並說明同一集合在離散拓撲下的判定可能不同。",
      "en": "Let X={1,2,3,4} and τ={∅,{1},{1,2},{3,4},{1,3,4},X}. Decide whether N1={1,2,3} and N2={2,3,4} are neighborhoods of the point 2; prove that in a finite topology the neighborhoods of x are exactly the subsets containing O_x (the intersection of all open sets containing x), and use this to list all neighborhoods of the points 1, 2, 3 and 4; prove that neighborhoods are closed upwards; and show that the verdict for the same set can change under the discrete topology."
    },
    "givens": [
      {
        "id": "G1",
        "statement": {
          "zh-Hant": "底集合 X={1,2,3,4}，拓撲 τ={∅,{1},{1,2},{3,4},{1,3,4},X}（MKO 假設 a1）。",
          "en": "The underlying set X={1,2,3,4} and the topology τ={∅,{1},{1,2},{3,4},{1,3,4},X} (MKO assumption a1)."
        }
      },
      {
        "id": "G2",
        "statement": {
          "zh-Hant": "候選點與集合：x=2，N1={1,2,3}，N2={2,3,4}；都滿足 x∈X 與 N⊆X。",
          "en": "Candidate point and sets: x=2, N1={1,2,3}, N2={2,3,4}; all satisfy x∈X and N⊆X."
        }
      },
      {
        "id": "G3",
        "statement": {
          "zh-Hant": "比較用的離散拓撲 δ=P(X)，即 X 的每個子集都是開集。",
          "en": "For comparison, the discrete topology δ=P(X), in which every subset of X is open."
        }
      }
    ],
    "steps": [
      {
        "id": "S01",
        "uses": [
          "G1"
        ],
        "before_tex": "\\tau=\\{\\varnothing,\\{1\\},\\{1,2\\},\\{3,4\\},\\{1,3,4\\},X\\}",
        "after_tex": "(X,\\tau)\\ \\text{is a topological space}",
        "relation": "implies",
        "rule": "topology_def",
        "conditions": [
          "\\tau\\ \\text{finite}"
        ],
        "explanation": {
          "zh-Hant": "確認前提：六個成員都是 X 的子集，∅、X∈τ。四個非平凡成員兩兩的聯集與交集為：{1}、{1,2} 得 {1,2} 與 {1}；{1}、{3,4} 得 {1,3,4} 與 ∅；{1}、{1,3,4} 得 {1,3,4} 與 {1}；{1,2}、{3,4} 得 X 與 ∅；{1,2}、{1,3,4} 得 X 與 {1}；{3,4}、{1,3,4} 得 {1,3,4} 與 {3,4}，全在 τ 中。τ 有限，每個子族都有限，對成員數歸納即由兩兩封閉與 ∅、X∈τ 得到任意子族的聯集與有限交集封閉。",
          "en": "Confirm the premise: the six members are subsets of X, and ∅, X∈τ. The unions and intersections of the four nontrivial members in pairs are: {1},{1,2} give {1,2} and {1}; {1},{3,4} give {1,3,4} and ∅; {1},{1,3,4} give {1,3,4} and {1}; {1,2},{3,4} give X and ∅; {1,2},{1,3,4} give X and {1}; {3,4},{1,3,4} give {1,3,4} and {3,4}; all are in τ. τ is finite, so every subfamily is finite, and induction on the number of members turns pairwise closure together with ∅, X∈τ into closure under unions of all subfamilies and finite intersections."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "topology_def",
            "mko_topological_space_def",
            "nat_induction"
          ],
          "explanation": {
            "zh-Hant": "需要完整的兩兩檢查與 τ 有限；若 τ 不是拓撲，鄰域的定義就沒有意義。",
            "en": "It needs the complete pairwise check and τ finite; if τ were not a topology, the definition of neighborhood would not apply."
          }
        },
        "leaf_basis": "topology_def + set_operations_def + nat_induction"
      },
      {
        "id": "S02",
        "uses": [
          "S01",
          "mko_neighborhood_def"
        ],
        "before_tex": "N\\in\\mathcal{N}(x)",
        "after_tex": "\\exists U\\in\\tau,\\ x\\in U\\ \\wedge\\ U\\subseteq N",
        "relation": "equivalent",
        "rule": "def_unfold",
        "conditions": [
          "x\\in X,\\ N\\subseteq X"
        ],
        "explanation": {
          "zh-Hant": "展開 MKO 定義：N 是 x 的鄰域，當且僅當有一個開集見證 U 同時含 x 且包含於 N。τ 只有六個成員，所以存在量詞的搜尋範圍是有限的：肯定時只需給出一個見證，否定時必須排除所有六個成員（finite_witness_search）。",
          "en": "Unfold the MKO definition: N is a neighborhood of x exactly when some open witness U contains x and is contained in N. τ has only six members, so the existential search is finite: an affirmative answer needs one witness, while a negative answer must rule out all six members (finite_witness_search)."
        },
        "reverse_audit": {
          "kind": "inverse_equivalence",
          "required_ids": [
            "mko_neighborhood_def",
            "def_unfold"
          ],
          "explanation": {
            "zh-Hant": "展開與折回定義互為反向。注意條件是兩個：x∈U 與 U⊆N，只有 x∈N 不夠。",
            "en": "Unfolding and folding the definition are inverse moves. Note there are two conditions, x∈U and U⊆N; x∈N alone is not enough."
          }
        },
        "leaf_basis": "def_unfold + mko_neighborhood_def"
      },
      {
        "id": "S03",
        "uses": [
          "G1"
        ],
        "before_tex": "\\tau_2=\\{U\\in\\tau\\mid 2\\in U\\}",
        "after_tex": "\\tau_2=\\{\\{1,2\\},X\\}",
        "relation": "implies",
        "rule": "set_builder",
        "conditions": [],
        "explanation": {
          "zh-Hant": "逐一檢查 τ 的成員是否含 2：∅ 否、{1} 否、{1,2} 是、{3,4} 否、{1,3,4} 否、X 是。所以點 2 的候選見證只有 {1,2} 與 X。",
          "en": "Check each member of τ for the point 2: ∅ no, {1} no, {1,2} yes, {3,4} no, {1,3,4} no, X yes. So the only candidate witnesses for the point 2 are {1,2} and X."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "set_builder",
            "finite_witness_search"
          ],
          "explanation": {
            "zh-Hant": "六個成員全部檢查過，所以 τ_2 的列表完整（N1 記錄其大小 2）。",
            "en": "All six members are checked, so the list τ_2 is complete (N1 records its size 2)."
          }
        },
        "leaf_basis": "set_builder + finite_witness_search"
      },
      {
        "id": "S04",
        "uses": [
          "S02",
          "S03",
          "G2"
        ],
        "before_tex": "N_1=\\{1,2,3\\}",
        "after_tex": "U=\\{1,2\\}:\\ 2\\in U,\\ U\\subseteq N_1\\ \\Rightarrow\\ N_1\\in\\mathcal{N}(2)",
        "relation": "implies",
        "rule": "exists_intro",
        "conditions": [],
        "explanation": {
          "zh-Hant": "取見證 U={1,2}∈τ：2∈U，且 U 的元素 1、2 都在 N1 中，所以 U⊆N1。依 S02 與 ∃引入，N1 是 2 的鄰域。",
          "en": "Take the witness U={1,2}∈τ: 2∈U, and both elements 1 and 2 of U lie in N1, so U⊆N1. By S02 and ∃-introduction, N1 is a neighborhood of 2."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S02",
            "S03",
            "exists_intro",
            "subset_def"
          ],
          "explanation": {
            "zh-Hant": "一個見證就足夠；見證必須是 τ 的成員，不能用任意含 2 的集合。",
            "en": "One witness suffices; the witness must be a member of τ, not just any set containing 2."
          }
        },
        "leaf_basis": "exists_intro + subset_def"
      },
      {
        "id": "S05",
        "uses": [
          "G1",
          "G2"
        ],
        "before_tex": "N_1=\\{1,2,3\\}",
        "after_tex": "N_1\\notin\\tau",
        "relation": "implies",
        "rule": "finite_witness_search",
        "conditions": [],
        "explanation": {
          "zh-Hant": "把 N1 與 τ 的六個成員逐一比較，沒有一個等於 {1,2,3}，所以 N1 不是開集。與 S04 合起來：N1 是 2 的鄰域，卻不是開集。鄰域不必是開集。",
          "en": "Compare N1 with each of the six members of τ; none equals {1,2,3}, so N1 is not open. Together with S04: N1 is a neighborhood of 2 but is not open. A neighborhood need not be open."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "finite_witness_search"
          ],
          "explanation": {
            "zh-Hant": "「不是開集」需要比較全部六個成員。",
            "en": "'Not open' requires comparing with all six members."
          }
        },
        "leaf_basis": "finite_witness_search + set_extensionality"
      },
      {
        "id": "S06",
        "uses": [
          "S02",
          "S03",
          "G2"
        ],
        "before_tex": "N_2=\\{2,3,4\\},\\ 2\\in N_2",
        "after_tex": "\\{1,2\\}\\not\\subseteq N_2,\\ X\\not\\subseteq N_2\\ \\Rightarrow\\ N_2\\notin\\mathcal{N}(2)",
        "relation": "implies",
        "rule": "quantifier_negation",
        "conditions": [],
        "explanation": {
          "zh-Hant": "雖然 2∈N2，仍需找見證。依 S03，只有 {1,2} 與 X 含 2；兩者都含 1，而 1∉N2，所以都不包含於 N2。其餘四個開集不含 2，不能當見證。沒有見證，依量詞否定，N2 不是 2 的鄰域。",
          "en": "Although 2∈N2, a witness is still needed. By S03 only {1,2} and X contain 2; both contain 1, and 1∉N2, so neither is contained in N2. The other four open sets do not contain 2 and cannot serve. With no witness, quantifier negation gives that N2 is not a neighborhood of 2."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S03",
            "quantifier_negation",
            "finite_witness_search"
          ],
          "explanation": {
            "zh-Hant": "否定存在命題必須排除全部六個成員：四個因不含 2 排除，兩個因不包含於 N2 排除。",
            "en": "Refuting the existential requires excluding all six members: four because they miss 2, two because they are not contained in N2."
          }
        },
        "leaf_basis": "quantifier_negation + finite_witness_search + subset_def"
      },
      {
        "id": "S07",
        "uses": [
          "S01"
        ],
        "before_tex": "O_x=\\textstyle\\bigcap\\{U\\in\\tau\\mid x\\in U\\}",
        "after_tex": "O_x\\in\\tau,\\ x\\in O_x,\\ (N\\in\\mathcal{N}(x)\\iff O_x\\subseteq N)",
        "relation": "theorem_application",
        "rule": "L_least_open",
        "conditions": [
          "\\tau\\ \\text{finite}"
        ],
        "explanation": {
          "zh-Hant": "為了列出全部鄰域，套用引理 L_least_open（在 S07.1 到 S07.3 證明）：τ 有限時，含 x 的全部開集之交 O_x 本身是開集且含 x，而且 N 是 x 的鄰域恰好當 O_x⊆N。於是「搜尋見證」化為「檢查一個包含關係」。這個最小開鄰域是由有限性推出的，不是 MKO 假設 a2 所禁止的預設。",
          "en": "To list all neighborhoods, apply Lemma L_least_open (proved in S07.1 to S07.3): when τ is finite, the intersection O_x of all open sets containing x is itself open and contains x, and N is a neighborhood of x exactly when O_x⊆N. So 'search for a witness' becomes 'check one inclusion'. This least open neighborhood is derived from finiteness; it is not the kind of default that MKO assumption a2 rules out."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "L_least_open",
            "S01"
          ],
          "explanation": {
            "zh-Hant": "引理需要 τ 有限；在 ℝ 的通常拓撲中，含 0 的開集之交是 {0}，不是開集，0 沒有最小鄰域（見錯誤控制三）。",
            "en": "The lemma needs τ finite; in the usual topology of ℝ, the intersection of the open sets containing 0 is {0}, which is not open, and 0 has no least neighborhood (see error control three)."
          }
        },
        "leaf_basis": "topology_def + set_operations_def + subset_def"
      },
      {
        "id": "S07.1",
        "uses": [
          "mko_topological_space_def",
          "set_operations_def"
        ],
        "before_tex": "\\tau_x=\\{U\\in\\tau\\mid x\\in U\\}",
        "after_tex": "O_x\\in\\tau,\\ x\\in O_x",
        "relation": "implies",
        "rule": "mko_topological_space_def",
        "conditions": [
          "\\tau\\ \\text{finite}"
        ],
        "explanation": {
          "zh-Hant": "τ_x 是 τ 的子族，因 τ 有限而有限；又 X∈τ_x，所以非空。依拓撲公理，有限子族的交集在 τ 中，故 O_x∈τ。τ_x 的每個成員都含 x，所以 x 在它們的交集中。",
          "en": "τ_x is a subfamily of τ, finite because τ is finite, and nonempty because X∈τ_x. By the axiom on finite intersections, O_x∈τ. Every member of τ_x contains x, so x lies in their intersection."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "mko_topological_space_def",
            "set_operations_def"
          ],
          "explanation": {
            "zh-Hant": "關鍵是有限交集公理；若 τ_x 無限，交集不一定開。",
            "en": "The key is the finite intersection axiom; if τ_x were infinite, the intersection need not be open."
          }
        },
        "leaf_basis": "mko_topological_space_def + set_operations_def"
      },
      {
        "id": "S07.2",
        "uses": [
          "S07.1",
          "mko_neighborhood_def"
        ],
        "before_tex": "O_x\\subseteq N",
        "after_tex": "N\\in\\mathcal{N}(x)",
        "relation": "implies",
        "rule": "exists_intro",
        "conditions": [],
        "explanation": {
          "zh-Hant": "(⇐) 若 O_x⊆N，取見證 U=O_x：由 S07.1，U∈τ 且 x∈U，又 U⊆N，所以 N 是 x 的鄰域。",
          "en": "(⇐) If O_x⊆N, take the witness U=O_x: by S07.1, U∈τ and x∈U, and U⊆N, so N is a neighborhood of x."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S07.1",
            "mko_neighborhood_def",
            "exists_intro"
          ],
          "explanation": {
            "zh-Hant": "見證 O_x 必須是開集，這正是 S07.1 的結論。",
            "en": "The witness O_x must be open, which is exactly what S07.1 provides."
          }
        },
        "leaf_basis": "exists_intro + mko_neighborhood_def"
      },
      {
        "id": "S07.3",
        "uses": [
          "S07.1",
          "mko_neighborhood_def"
        ],
        "before_tex": "N\\in\\mathcal{N}(x)",
        "after_tex": "O_x\\subseteq N",
        "relation": "implies",
        "rule": "exists_elim",
        "conditions": [],
        "explanation": {
          "zh-Hant": "(⇒) 若 N 是 x 的鄰域，取其見證 U：U∈τ、x∈U、U⊆N。則 U∈τ_x，交集 O_x 包含於每個成員，故 O_x⊆U⊆N。S07.1 到 S07.3 合起來證得 L_least_open。",
          "en": "(⇒) If N is a neighborhood of x, take a witness U: U∈τ, x∈U, U⊆N. Then U∈τ_x, and the intersection O_x is contained in each member, so O_x⊆U⊆N. S07.1 to S07.3 together prove L_least_open."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S07.1",
            "exists_elim",
            "subset_def"
          ],
          "explanation": {
            "zh-Hant": "用到交集包含於每個成員與 ⊆ 的傳遞；結論不提及見證 U，符合 ∃消去的條件。",
            "en": "It uses that an intersection is contained in each member and that ⊆ is transitive; the conclusion does not mention the witness U, as ∃-elimination requires."
          }
        },
        "leaf_basis": "exists_elim + set_operations_def + subset_def"
      },
      {
        "id": "S08",
        "uses": [
          "S03",
          "S07"
        ],
        "before_tex": "O_2=\\{1,2\\}\\cap X",
        "after_tex": "O_2=\\{1,2\\},\\ \\mathcal{N}(2)=\\{\\{1,2\\},\\{1,2,3\\},\\{1,2,4\\},X\\}",
        "relation": "implies",
        "rule": "L_least_open",
        "conditions": [],
        "explanation": {
          "zh-Hant": "由 S03，O_2={1,2}∩X={1,2}。依 S07，2 的鄰域恰是包含 {1,2} 的子集；元素 3、4 可自由選擇是否加入，共 2^2=4 個：{1,2}、{1,2,3}、{1,2,4}、X。這與 S04（N1 含 {1,2}）和 S06（N2 不含 1）一致。",
          "en": "By S03, O_2={1,2}∩X={1,2}. By S07 the neighborhoods of 2 are exactly the subsets containing {1,2}; the elements 3 and 4 may be added freely, giving 2^2=4 sets: {1,2}, {1,2,3}, {1,2,4}, X. This agrees with S04 (N1 contains {1,2}) and S06 (N2 lacks 1)."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S03",
            "S07",
            "finite_counting_basics"
          ],
          "explanation": {
            "zh-Hant": "列表完整性來自引理的雙向等價與子集計數（N2）。",
            "en": "Completeness of the list comes from the two-way equivalence in the lemma and the subset count (N2)."
          }
        },
        "leaf_basis": "L_least_open + finite_counting_basics"
      },
      {
        "id": "S09",
        "uses": [
          "G1",
          "S07"
        ],
        "before_tex": "\\tau_1=\\{\\{1\\},\\{1,2\\},\\{1,3,4\\},X\\}",
        "after_tex": "O_1=\\{1\\},\\ \\mathcal{N}(1)=\\{N\\subseteq X\\mid 1\\in N\\}",
        "relation": "implies",
        "rule": "L_least_open",
        "conditions": [],
        "explanation": {
          "zh-Hant": "含 1 的開集是 {1}、{1,2}、{1,3,4}、X，交集 O_1={1}。所以 1 的鄰域恰是所有含 1 的子集，2、3、4 各自可選，共 2^3=8 個。點 1 的鄰域比點 2 多，因為 {1} 本身是開集。",
          "en": "The open sets containing 1 are {1}, {1,2}, {1,3,4} and X, with intersection O_1={1}. So the neighborhoods of 1 are exactly the subsets containing 1; each of 2, 3, 4 may be included or not, giving 2^3=8 sets. The point 1 has more neighborhoods than the point 2 because {1} itself is open."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "S07",
            "finite_counting_basics"
          ],
          "explanation": {
            "zh-Hant": "τ_1 由逐一檢查六個成員得到（N4 記錄其大小 4）；計數見 N3。",
            "en": "τ_1 comes from checking all six members (N4 records its size 4); the count is N3."
          }
        },
        "leaf_basis": "L_least_open + set_builder + finite_counting_basics"
      },
      {
        "id": "S10",
        "uses": [
          "G1",
          "S07"
        ],
        "before_tex": "\\tau_3=\\tau_4=\\{\\{3,4\\},\\{1,3,4\\},X\\}",
        "after_tex": "O_3=O_4=\\{3,4\\},\\ \\mathcal{N}(3)=\\mathcal{N}(4)=\\{\\{3,4\\},\\{1,3,4\\},\\{2,3,4\\},X\\}",
        "relation": "implies",
        "rule": "L_least_open",
        "conditions": [],
        "explanation": {
          "zh-Hant": "含 3 的開集與含 4 的開集是同一族：{3,4}、{1,3,4}、X，交集都是 {3,4}。所以 3 與 4 的鄰域完全相同，共 4 個。注意 N2={2,3,4} 是 3 與 4 的鄰域，卻不是 2 的鄰域（S06）：同一集合是否為鄰域取決於點。",
          "en": "The open sets containing 3 and those containing 4 form the same family: {3,4}, {1,3,4}, X, with intersection {3,4}. So 3 and 4 have exactly the same 4 neighborhoods. Note that N2={2,3,4} is a neighborhood of 3 and of 4 but not of 2 (S06): whether a set is a neighborhood depends on the point."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "S07"
          ],
          "explanation": {
            "zh-Hant": "τ_3 與 τ_4 都由逐一檢查六個成員得到（N5 記錄大小 3）。",
            "en": "τ_3 and τ_4 both come from checking all six members (N5 records the size 3)."
          }
        },
        "leaf_basis": "L_least_open + set_builder"
      },
      {
        "id": "S11",
        "uses": [
          "S04"
        ],
        "before_tex": "N\\in\\mathcal{N}(x),\\ N\\subseteq M\\subseteq X",
        "after_tex": "M\\in\\mathcal{N}(x)",
        "relation": "theorem_application",
        "rule": "L_upward",
        "conditions": [
          "N\\subseteq M\\subseteq X"
        ],
        "explanation": {
          "zh-Hant": "套用向上封閉引理 L_upward（在 S11.1 證明，適用於任何拓撲空間）。例：N1={1,2,3} 是 2 的鄰域且 N1⊆X，所以 X 也是 2 的鄰域，與 S08 的列表一致。",
          "en": "Apply the upward-closure lemma L_upward (proved in S11.1, valid in every topological space). Example: N1={1,2,3} is a neighborhood of 2 and N1⊆X, so X is a neighborhood of 2 as well, matching the list in S08."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "L_upward",
            "S04"
          ],
          "explanation": {
            "zh-Hant": "向上封閉不給出向下封閉：{1,2} 是 2 的鄰域，但其子集 {2} 不是。",
            "en": "Upward closure does not give downward closure: {1,2} is a neighborhood of 2, but its subset {2} is not."
          }
        },
        "leaf_basis": "subset_def + mko_neighborhood_def"
      },
      {
        "id": "S11.1",
        "uses": [
          "mko_neighborhood_def",
          "subset_def"
        ],
        "before_tex": "x\\in U\\subseteq N\\subseteq M,\\ U\\in\\tau",
        "after_tex": "x\\in U\\subseteq M\\ \\Rightarrow\\ M\\in\\mathcal{N}(x)",
        "relation": "implies",
        "rule": "subset_def",
        "conditions": [],
        "explanation": {
          "zh-Hant": "設 U 是 N 的見證。由 U⊆N 與 N⊆M，依 ⊆ 的傳遞得 U⊆M；U 仍是含 x 的開集，所以同一個 U 也是 M 的見證，M 是 x 的鄰域。x、N、M 都是任意的，證得 L_upward。",
          "en": "Let U be a witness for N. From U⊆N and N⊆M, transitivity of ⊆ gives U⊆M; U is still an open set containing x, so the same U witnesses M, and M is a neighborhood of x. Since x, N and M were arbitrary, this proves L_upward."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "mko_neighborhood_def",
            "subset_def",
            "forall_intro"
          ],
          "explanation": {
            "zh-Hant": "只用到定義與包含的傳遞，沒有用到 τ 有限，所以對任何拓撲空間成立。",
            "en": "Only the definition and transitivity of inclusion are used, not the finiteness of τ, so it holds in every topological space."
          }
        },
        "leaf_basis": "subset_def + mko_neighborhood_def + forall_intro"
      },
      {
        "id": "S12",
        "uses": [
          "G3",
          "S08"
        ],
        "before_tex": "\\{2\\}\\ \\text{under}\\ \\tau\\ \\text{and under}\\ \\delta",
        "after_tex": "\\{2\\}\\notin\\mathcal{N}_\\tau(2),\\quad \\{2\\}\\in\\mathcal{N}_\\delta(2)",
        "relation": "implies",
        "rule": "mko_neighborhood_def",
        "conditions": [],
        "explanation": {
          "zh-Hant": "在 τ 下，O_2={1,2}⊄{2}，所以 {2} 不是 2 的鄰域（S08）。在離散拓撲 δ 下，{2}∈δ 本身就是含 2 的開集，自己就是見證，所以 {2} 是 2 的鄰域。同一個底集合、同一個點、同一個候選集合，換了拓撲判定就改變：鄰域列表依賴拓撲與點，不能只看底集合（MKO 第三段）。",
          "en": "Under τ, O_2={1,2}⊄{2}, so {2} is not a neighborhood of 2 (S08). Under the discrete topology δ, {2}∈δ is itself an open set containing 2 and serves as its own witness, so {2} is a neighborhood of 2. Same underlying set, same point, same candidate, yet the verdict changes with the topology: the list of neighborhoods depends on the topology and the point, not only on the underlying set (MKO paragraph 3)."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G3",
            "S08",
            "mko_neighborhood_def"
          ],
          "explanation": {
            "zh-Hant": "兩個判定各自只用到對應拓撲的定義；不宣稱 δ 下的其他結論。",
            "en": "Each verdict uses only the definition with the corresponding topology; nothing else about δ is claimed."
          }
        },
        "leaf_basis": "mko_neighborhood_def + exists_intro + quantifier_negation"
      }
    ],
    "result": {
      "zh-Hant": "N1={1,2,3} 是點 2 的鄰域（見證 {1,2}）但不是開集；N2={2,3,4} 含 2 卻不是 2 的鄰域。在有限拓撲中 N 是 x 的鄰域當且僅當 O_x⊆N；本例 O_1={1}、O_2={1,2}、O_3=O_4={3,4}，所以 1 有 8 個鄰域，2 有 4 個，3 與 4 各有相同的 4 個。鄰域向上封閉；在離散拓撲下 {2} 是 2 的鄰域，在 τ 下則不是。",
      "en": "N1={1,2,3} is a neighborhood of the point 2 (witness {1,2}) but is not open; N2={2,3,4} contains 2 but is not a neighborhood of 2. In a finite topology N is a neighborhood of x exactly when O_x⊆N; here O_1={1}, O_2={1,2}, O_3=O_4={3,4}, so 1 has 8 neighborhoods, 2 has 4, and 3 and 4 share the same 4. Neighborhoods are closed upwards; under the discrete topology {2} is a neighborhood of 2, under τ it is not."
    },
    "negative_controls": [
      {
        "claim": {
          "zh-Hant": "{1,2,3} 不是開集，所以它不是點 2 的鄰域",
          "en": "{1,2,3} is not open, so it is not a neighborhood of the point 2"
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "見證 {1,2}∈τ 滿足 2∈{1,2}⊆{1,2,3}。",
          "en": "The witness {1,2}∈τ satisfies 2∈{1,2}⊆{1,2,3}."
        }
      },
      {
        "claim": {
          "zh-Hant": "2∈{2,3,4}，所以 {2,3,4} 是點 2 的鄰域",
          "en": "2∈{2,3,4}, so {2,3,4} is a neighborhood of the point 2"
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "含 2 的開集只有 {1,2} 與 X，兩者都含 1∉{2,3,4}，沒有見證。",
          "en": "The only open sets containing 2 are {1,2} and X, both containing 1∉{2,3,4}, so there is no witness."
        }
      },
      {
        "claim": {
          "zh-Hant": "單點集 {2} 一定是點 2 的鄰域",
          "en": "The singleton {2} is always a neighborhood of the point 2"
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "在 τ 下 O_2={1,2}⊄{2}；只有在像離散拓撲這樣 {2} 為開集的拓撲中才成立。",
          "en": "Under τ, O_2={1,2}⊄{2}; it holds only in topologies such as the discrete one where {2} is open."
        }
      },
      {
        "claim": {
          "zh-Hant": "3 與 4 是不同的點，所以它們的鄰域族一定不同",
          "en": "3 and 4 are different points, so their families of neighborhoods must differ"
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "O_3=O_4={3,4}，兩點的鄰域族完全相同（S10）。",
          "en": "O_3=O_4={3,4}, so the two points have exactly the same neighborhoods (S10)."
        }
      }
    ],
    "status": "candidate",
    "gaps": [],
    "verification": {
      "structure": "checked_local_script",
      "mathematics": "candidate_argument",
      "formalization": "not_formalized"
    },
    "rule_glossary": [
      {
        "id": "subset_def",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "子集：A⊆B 表示 A 的每個元素都是 B 的元素，即 ∀x (x∈A⇒x∈B)。",
          "en": "Subset: A⊆B means every element of A is an element of B, i.e. ∀x (x∈A⇒x∈B)."
        }
      },
      {
        "id": "set_operations_def",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "集合運算：x∈A∪B ⇔ x∈A 或 x∈B；x∈A∩B ⇔ x∈A 且 x∈B；x∈A∖B ⇔ x∈A 且 x∉B；在全集 U 中 Aᶜ=U∖A。",
          "en": "Set operations: x∈A∪B ⇔ x∈A or x∈B; x∈A∩B ⇔ x∈A and x∈B; x∈A∖B ⇔ x∈A and x∉B; in a universe U, Aᶜ=U∖A."
        }
      },
      {
        "id": "finite_counting_basics",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "有限計數：互斥有限集合 A、B 有 |A∪B|=|A|+|B|；|A×B|=|A|·|B|；有限集之間存在雙射 ⇔ 元素個數相同。",
          "en": "Finite counting: for disjoint finite sets A, B, |A∪B|=|A|+|B|; |A×B|=|A|·|B|; there is a bijection between finite sets ⇔ they have the same number of elements."
        }
      },
      {
        "id": "nat_induction",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "數學歸納原理：對從 n₀ 起的命題族 P(n)，若 P(n₀) 成立，且對每個 n≥n₀ 都有 P(n)⇒P(n+1)，則所有 n≥n₀ 都有 P(n)。",
          "en": "Principle of induction: for a family P(n) starting at n₀, if P(n₀) holds and P(n)⇒P(n+1) for every n≥n₀, then P(n) holds for every n≥n₀."
        }
      },
      {
        "id": "topology_def",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "拓撲：X 上的開集族 τ 包含 ∅ 與 X，對任意聯集與有限交集封閉。",
          "en": "Topology: a family τ of open subsets of X containing ∅ and X, closed under arbitrary unions and finite intersections."
        }
      },
      {
        "id": "def_unfold",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "展開定義：把一個已定義的詞換成它的定義內容（或反向收回），命題的真假不變。",
          "en": "Unfolding a definition: replacing a defined term by its definition (or folding it back) does not change whether a statement is true."
        }
      },
      {
        "id": "set_builder",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "集合建構式：x∈{y∈A ∣ P(y)} 當且僅當 x∈A 且 P(x)。",
          "en": "Set-builder notation: x∈{y∈A ∣ P(y)} if and only if x∈A and P(x)."
        }
      },
      {
        "id": "exists_intro",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "∃引入：若找到 a∈D 使 P(a) 成立，則 ∃x∈D, P(x)。",
          "en": "∃-introduction: if some a∈D satisfies P(a), then ∃x∈D, P(x)."
        }
      },
      {
        "id": "set_extensionality",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "集合相等：A=B 當且僅當 A⊆B 且 B⊆A，即兩者有相同元素。",
          "en": "Set equality: A=B if and only if A⊆B and B⊆A, i.e. they have the same elements."
        }
      },
      {
        "id": "quantifier_negation",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "量詞否定：¬(∀x, P(x)) 等價於 ∃x, ¬P(x)；¬(∃x, P(x)) 等價於 ∀x, ¬P(x)。",
          "en": "Negating quantifiers: ¬(∀x, P(x)) is equivalent to ∃x, ¬P(x), and ¬(∃x, P(x)) is equivalent to ∀x, ¬P(x)."
        }
      },
      {
        "id": "exists_elim",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "∃消去：由 ∃x∈D, P(x)，可取一個新名字 a 表示某個滿足 P(a) 的元素；只要最後結論不含 a，就可用 a 推理。",
          "en": "∃-elimination: from ∃x∈D, P(x) we may name some element a with P(a) by a fresh name; reasoning with a is allowed as long as the final conclusion does not mention a."
        }
      },
      {
        "id": "forall_intro",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "∀引入（全稱推廣）：若某命題對一個「任意的」元素 x 證成，而證明沒有對 x 加任何額外假設，則它對論域中所有 x 成立。",
          "en": "∀-introduction (generalization): if a statement is proved for an arbitrary element x, with no extra assumption on x, it holds for every x in the domain."
        }
      },
      {
        "id": "mko_neighborhood_def",
        "kind": "cited",
        "source": {
          "mko_id": "mko-neighborhood",
          "sha256": "175c50e3f4cbb3dfa266c387a13492faeffdacb3df5d699b2ad94f7ea5f91ef1",
          "commit": "b28a5edbd46279b1db2a3f3f48bb3f447e18899f"
        },
        "statement": {
          "zh-Hant": "在拓撲空間 (X,τ) 中，N⊆X 是 x∈X 的鄰域，當且僅當存在 U∈τ，使 x∈U⊆N。所有含 x 的開集構成 x 的開鄰域基礎，但一般鄰域本身不必開。",
          "en": "In a topological space (X,τ), N⊆X is a neighborhood of x∈X exactly when there is U∈τ with x∈U⊆N. The open sets containing x form an open neighborhood base, but a general neighborhood need not itself be open."
        }
      },
      {
        "id": "mko_topological_space_def",
        "kind": "cited",
        "source": {
          "mko_id": "mko-topological-space",
          "sha256": "95f78b4f323b3139dd05068842f7209ac33b39b3d86feb5b73e0eb8849cdb43d",
          "commit": "b28a5edbd46279b1db2a3f3f48bb3f447e18899f"
        },
        "statement": {
          "zh-Hant": "X 上的拓撲是子集合族 τ⊆P(X)，滿足 ∅∈τ、X∈τ、任意子族的聯集在 τ、任意有限子族的交集在 τ（空族交集按 X 解讀）。",
          "en": "A topology on X is a family τ⊆P(X) with ∅∈τ, X∈τ, unions of all subfamilies in τ, and intersections of all finite subfamilies in τ (the empty intersection read as X)."
        }
      },
      {
        "id": "finite_witness_search",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "對明示列出的有限集合 F，∃U∈F, Q(U) 等價於 Q 對某個列出成員成立；要否定它，必須逐一檢查 F 的每個成員都不滿足 Q。",
          "en": "For an explicitly listed finite set F, ∃U∈F, Q(U) is equivalent to Q holding for some listed member; to refute it, every member of F must be checked and found not to satisfy Q."
        }
      },
      {
        "id": "L_least_open",
        "kind": "lemma",
        "proved_in": [
          "S07.1",
          "S07.2",
          "S07.3"
        ],
        "statement": {
          "zh-Hant": "設 (X,τ) 是拓撲空間且 τ 有限，x∈X，O_x=∩{U∈τ ∣ x∈U}。則 O_x∈τ、x∈O_x，且對每個 N⊆X：N 是 x 的鄰域當且僅當 O_x⊆N。",
          "en": "Let (X,τ) be a topological space with τ finite, x∈X, and O_x=∩{U∈τ ∣ x∈U}. Then O_x∈τ, x∈O_x, and for every N⊆X: N is a neighborhood of x exactly when O_x⊆N."
        }
      },
      {
        "id": "L_upward",
        "kind": "lemma",
        "proved_in": [
          "S11.1"
        ],
        "statement": {
          "zh-Hant": "在任何拓撲空間中，若 N 是 x 的鄰域且 N⊆M⊆X，則 M 也是 x 的鄰域。",
          "en": "In any topological space, if N is a neighborhood of x and N⊆M⊆X, then M is also a neighborhood of x."
        }
      }
    ],
    "revision_log": [],
    "numeric_checks": [
      {
        "id": "N1",
        "step": "S03",
        "lhs": "0+0+1+0+0+1",
        "rhs": "2"
      },
      {
        "id": "N2",
        "step": "S08",
        "lhs": "2**2",
        "rhs": "4"
      },
      {
        "id": "N3",
        "step": "S09",
        "lhs": "2**3",
        "rhs": "8"
      },
      {
        "id": "N4",
        "step": "S09",
        "lhs": "0+1+1+0+1+1",
        "rhs": "4"
      },
      {
        "id": "N5",
        "step": "S10",
        "lhs": "0+0+0+1+1+1",
        "rhs": "3"
      }
    ]
  },
  "presentation": {
    "md_scope": {
      "zh-Hant": "在 MKO 範圍內工作：X、τ、點與候選集合都明示（假設 a1），鄰域採「包含一個含該點的開集」的語義，不用距離或半徑，也不預設最小鄰域（假設 a2）；本例的最小鄰域 O_x 是由 τ 有限推出，不是假設。不處理鄰域濾子的形式化，不改動 canonical MKO 或英文 edition。",
      "en": "Works inside the MKO's scope: X, τ, the point and the candidate sets are explicit (assumption a1), and a neighborhood means a set containing an open set that contains the point, with no distance, radius or assumed least neighborhood (assumption a2); the least neighborhood O_x in this example is derived from τ being finite, not assumed. It does not formalize the neighborhood filter and does not change the canonical MKO or its English edition."
    },
    "md_symbols": [
      [
        "X",
        "底集合 {1,2,3,4}",
        "the underlying set {1,2,3,4}"
      ],
      [
        "\\tau",
        "X 上的拓撲",
        "the topology on X"
      ],
      [
        "\\tau_x",
        "含 x 的開集族 {U∈τ ∣ x∈U}",
        "the family of open sets containing x, {U∈τ ∣ x∈U}"
      ],
      [
        "O_x",
        "τ_x 全部成員之交",
        "the intersection of all members of τ_x"
      ],
      [
        "\\mathcal{N}(x)",
        "x 的全部鄰域",
        "all neighborhoods of x"
      ],
      [
        "\\delta",
        "X 上的離散拓撲 P(X)",
        "the discrete topology P(X) on X"
      ]
    ],
    "md_error_controls": [
      {
        "title": "鄰域不必是開集 / A neighborhood need not be open",
        "zh": "MKO 指出的誤解是把鄰域等同於開集或開球。N1={1,2,3} 不在 τ 中，卻因為包含開集 {1,2}∋2 而是 2 的鄰域（S04、S05）。鄰域的定義只要求「包含」一個含點的開集。",
        "en": "The misconception identified in the MKO is identifying neighborhoods with open sets or open balls. N1={1,2,3} is not in τ, yet it is a neighborhood of 2 because it contains the open set {1,2}∋2 (S04, S05). The definition only requires containing an open set that contains the point."
      },
      {
        "title": "只檢查 x∈N 不夠 / Checking x∈N is not enough",
        "zh": "N2={2,3,4} 含 2，但含 2 的開集 {1,2} 與 X 都含 1，無法放進 N2（S06）。判定鄰域必須搜尋開集見證，否定時要排除所有候選。",
        "en": "N2={2,3,4} contains 2, but the open sets containing 2, {1,2} and X, both contain 1 and do not fit inside N2 (S06). Deciding a neighborhood requires a search for an open witness, and a negative answer must exclude every candidate."
      },
      {
        "title": "最小鄰域來自有限性，不是一般事實 / The least neighborhood comes from finiteness, not from a general fact",
        "zh": "S07 的 O_x 之所以開，是因為 τ 有限，交集是有限交。在 ℝ 的通常拓撲中，若 N 是 0 的最小鄰域，它要包含於每個以正整數 n≥1 編號的區間 (−1/n,1/n)，依阿基米德性質 N⊆{0}，即 N={0}；但 {0} 不包含任何含 0 的開區間，不是 0 的鄰域，矛盾。所以 0 沒有最小鄰域，不能把本例的做法推廣成一般假設（MKO 假設 a2）。",
        "en": "O_x in S07 is open because τ is finite and the intersection is finite. In the usual topology of ℝ, if N were a least neighborhood of 0 it would lie inside every interval (−1/n,1/n) indexed by positive integers n≥1, so by the Archimedean property N⊆{0}, i.e. N={0}; but {0} contains no open interval around 0 and is not a neighborhood of 0, a contradiction. So 0 has no least neighborhood, and the method of this example may not be turned into a general assumption (MKO assumption a2)."
      }
    ],
    "md_open_items": [
      {
        "zh-Hant": "與 Mathlib 的 nhds、nhds_basis_opens 與鄰域濾子向上封閉語義的綁定（MKO formal next）未在此建立。",
        "en": "The binding to Mathlib's nhds, nhds_basis_opens and the upward-closed neighborhood filter (MKO formal next) is not built here."
      }
    ]
  },
  "revision": {
    "id": "production-20261019-adopted-96",
    "source_commit": "b28a5edbd46279b1db2a3f3f48bb3f447e18899f",
    "adopted_source_sha256": "a79028f77322db110cfe9e06c126ca7f2fafe3f16ff676c8b59b56e6bad4389a",
    "original_source_sha256": "b21c0ed8194f848c969d43585bab34a26ff70a3a4c37bb4e3de7b9931a5e0ef4",
    "owner_adopted": true,
    "bilingual_sync": "complete_source_bound",
    "formal_Lean": "NOT_RUN",
    "independent_AI_concurrence": "NOT_MEASURED",
    "issue_ids": [
      "BR-M034"
    ],
    "scope": "Owner-adopted natural-language teaching guide; not a formal proof, canonical MKO rewrite or evidence-status promotion."
  }
}
