{
  "schema_version": "ocme-derivation-reader-v1",
  "guide_id": "derivation-mko-circle-01",
  "mko_id": "mko-circle",
  "title": {
    "zh-Hant": "圓：以距離平方判定點在圓內、圓上或圓外，並處理零半徑",
    "en": "Circle: classifying points as inside, on or outside by squared distance, including radius zero"
  },
  "contract": {
    "schema_version": "ocme-derivation-guide-v0.1",
    "guide_id": "derivation-mko-circle-01",
    "source": {
      "mko_id": "mko-circle",
      "commit": "b28a5edbd46279b1db2a3f3f48bb3f447e18899f",
      "sha256": "f5666d01288a4c7140be59abad5dbf093293c9136d7d60dc752a79a497d99d2e",
      "english_sha256": "e3c801529b17bbcfc6b73fef34a12a234a6dedbbaf8f1e283d3371fd2c7290d0"
    },
    "mode": "worked_example",
    "audience_prerequisites": [
      "numeric_evaluation",
      "square_nonneg",
      "sqrt_def",
      "order_basics",
      "distributive"
    ],
    "goal": {
      "zh-Hant": "在等單位正交座標系中，取中心 O=(2,−1)、半徑 r=5。判定 A=(5,3)、B=(4,1)、E=(−2,3) 各在圓內、圓上或圓外；驗證四個軸向點 O±(5,0)、O±(0,5) 都在 C(O,5) 上，並由兩個相對的軸向點算出直徑長 2r=10。再把半徑改為 r=0，證明 C(O,0)={O}、沒有圓內點，並判定 B 的位置。",
      "en": "In an equal-unit orthonormal frame take center O=(2,−1) and radius r=5. Decide whether each of A=(5,3), B=(4,1), E=(−2,3) is strictly inside, on, or outside the circle; verify that the four axial points O±(5,0), O±(0,5) lie on C(O,5), and compute from two opposite axial points the diameter length 2r=10. Then change the radius to r=0, prove that C(O,0)={O} and that no point is strictly inside, and classify B."
    },
    "givens": [
      {
        "id": "G1",
        "statement": {
          "zh-Hant": "框架：等單位正交座標系；中心與點的座標為整數，半徑為非負整數（MKO 假設 a1、a2）。",
          "en": "Frame: an equal-unit orthonormal Cartesian frame; center and point coordinates are integers and the radius is a nonnegative integer (MKO assumptions a1, a2)."
        }
      },
      {
        "id": "G2",
        "statement": {
          "zh-Hant": "O=(2,−1)、r=5；A=(5,3)、B=(4,1)、E=(−2,3)。",
          "en": "O=(2,−1), r=5; A=(5,3), B=(4,1), E=(−2,3)."
        }
      },
      {
        "id": "G3",
        "statement": {
          "zh-Hant": "退化情形：同一中心 O，半徑 r=0。",
          "en": "Degenerate case: the same center O with radius r=0."
        }
      }
    ],
    "steps": [
      {
        "id": "S01",
        "uses": [
          "G1"
        ],
        "before_tex": "C(O,r),\\ r\\ge 0",
        "after_tex": "C(O,r)=\\{P\\mid d(P,O)=r\\};\\ \\text{inside}:\\ d(P,O)<r;\\ \\text{outside}:\\ d(P,O)>r",
        "relation": "definition",
        "rule": "mko_circle_def",
        "conditions": [
          "r\\ge 0"
        ],
        "explanation": {
          "zh-Hant": "寫出 MKO 的定義：圓是與中心距離恰為 r 的點的集合，也就是邊界本身；距離小於 r 的點稱為圓內，大於 r 的點稱為圓外。圓內的點不是 C(O,r) 的成員。半徑必須 r≥0（假設 a2）。",
          "en": "State the MKO's definition: the circle is the set of points at distance exactly r from the center, that is, the boundary itself; points at distance less than r are strictly inside and points at distance greater than r are outside. Points strictly inside are not members of C(O,r). The radius must satisfy r≥0 (assumption a2)."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "mko_circle_def"
          ],
          "explanation": {
            "zh-Hant": "此步只寫出定義與三種分類，不推出新事實。",
            "en": "This step only states the definition and the three classes; it derives no new fact."
          }
        },
        "leaf_basis": "mko_circle_def + set_builder"
      },
      {
        "id": "S02",
        "uses": [
          "S01",
          "G1",
          "G2"
        ],
        "before_tex": "P=(x,y),\\ O=(2,-1)",
        "after_tex": "d(P,O)\\ge 0,\\ \\ d(P,O)^2=(x-2)^2+(y+1)^2",
        "relation": "implies",
        "rule": "mko_distance_def",
        "conditions": [
          "P,O\\ \\text{in one orthonormal equal-unit frame}"
        ],
        "explanation": {
          "zh-Hant": "依距離條目（同一等單位正交框架，G1），d(P,O)=√((x−2)²+(y−(−1))²)≥0，且 y−(−1)=y+1。根號內非負，依 sqrt_def 根號的平方等於根號內的數，所以 d(P,O)²=(x−2)²+(y+1)²。",
          "en": "By the distance entry (same equal-unit orthonormal frame, G1), d(P,O)=√((x−2)²+(y−(−1))²)≥0, and y−(−1)=y+1. The radicand is nonnegative, so by sqrt_def the square of the root is the radicand: d(P,O)²=(x−2)²+(y+1)²."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "mko_distance_def",
            "sqrt_def",
            "G1"
          ],
          "explanation": {
            "zh-Hant": "需要兩點在同一等單位正交框架；不宣稱由距離可反推出 P 的座標。",
            "en": "It needs both points in one equal-unit orthonormal frame; it is not claimed that the coordinates of P can be recovered from the distance."
          }
        },
        "leaf_basis": "mko_distance_def + sqrt_def + add_inverse"
      },
      {
        "id": "S03",
        "uses": [
          "S01",
          "S02",
          "L_sq_cmp"
        ],
        "before_tex": "d(P,O)\\ \\square\\ r",
        "after_tex": "d(P,O)\\ \\square\\ r\\iff d(P,O)^2\\ \\square\\ r^2\\quad(\\square\\in\\{<,=,>\\})",
        "relation": "equivalent",
        "rule": "L_sq_cmp",
        "conditions": [
          "d(P,O)\\ge 0",
          "r\\ge 0"
        ],
        "explanation": {
          "zh-Hant": "d(P,O)≥0（S02），r≥0（S01），所以引理 L_sq_cmp（s=d(P,O)）適用：與 r 的三種比較，分別等價於距離平方與 r² 的同一種比較。這就是 MKO 第一段所說「對 r≥0，可把 d(P,O)=r 等價改成距離平方等於 r²」。引理在 S03.1 到 S03.4 證明。",
          "en": "d(P,O)≥0 (S02) and r≥0 (S01), so Lemma L_sq_cmp (s=d(P,O)) applies: each of the three comparisons with r is equivalent to the same comparison between the squared distance and r². This is the MKO's remark that for r≥0 the condition d(P,O)=r may be replaced equivalently by squared distance equal to r². The lemma is proved in S03.1 to S03.4."
        },
        "reverse_audit": {
          "kind": "inverse_equivalence",
          "required_ids": [
            "L_sq_cmp",
            "S02"
          ],
          "explanation": {
            "zh-Hant": "引理兩個方向都在子步證明；前提是兩邊非負，負半徑因此不在本稿範圍。",
            "en": "Both directions of the lemma are proved in the sub-steps; the hypothesis is that both sides are nonnegative, which is why negative radii are outside this guide."
          }
        },
        "leaf_basis": "L_sq_cmp"
      },
      {
        "id": "S03.1",
        "uses": [
          "order_basics",
          "distributive"
        ],
        "before_tex": "0\\le s<r",
        "after_tex": "s^2<r^2",
        "relation": "implies",
        "rule": "order_basics",
        "conditions": [
          "s\\ge 0"
        ],
        "explanation": {
          "zh-Hant": "由 0≤s<r 得 r>0，故 r+s>0，且 r−s>0。依 order_basics（0<r−s 且 r+s>0 ⇒ 0·(r+s)<(r−s)(r+s)）得 (r−s)(r+s)>0。依分配律 (r−s)(r+s)=r²−s²，所以 r²−s²>0，即 s²<r²。",
          "en": "From 0≤s<r we get r>0, hence r+s>0, and r−s>0. By order_basics (0<r−s and r+s>0 give 0·(r+s)<(r−s)(r+s)), (r−s)(r+s)>0. By distributivity (r−s)(r+s)=r²−s², so r²−s²>0, that is s²<r²."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "order_basics",
            "distributive",
            "mul_zero"
          ],
          "explanation": {
            "zh-Hant": "需要 s≥0 才能保證 r+s>0；此步不宣稱反向，反向在 S03.4 由三分律取得。",
            "en": "s≥0 is needed to make r+s>0; the converse is not claimed here and is obtained in S03.4 from trichotomy."
          }
        },
        "leaf_basis": "order_basics + distributive + mul_zero + add_inverse"
      },
      {
        "id": "S03.2",
        "uses": [
          "eq_congruence"
        ],
        "before_tex": "s=r",
        "after_tex": "s^2=r^2",
        "relation": "implies",
        "rule": "eq_congruence",
        "conditions": [],
        "explanation": {
          "zh-Hant": "對等式兩邊做同一個運算「平方」，得 s²=r²。",
          "en": "Apply the same operation, squaring, to both sides to get s²=r²."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "eq_congruence"
          ],
          "explanation": {
            "zh-Hant": "只宣稱正向；反向需要非負條件（(−5)²=5² 但 −5≠5），在 S03.4 處理。",
            "en": "Only the forward direction is claimed; the converse needs nonnegativity ((−5)²=5² but −5≠5) and is handled in S03.4."
          }
        },
        "leaf_basis": "eq_congruence"
      },
      {
        "id": "S03.3",
        "uses": [
          "S03.1"
        ],
        "before_tex": "0\\le r<s",
        "after_tex": "r^2<s^2",
        "relation": "implies",
        "rule": "order_basics",
        "conditions": [
          "r\\ge 0"
        ],
        "explanation": {
          "zh-Hant": "S03.1 對任意兩個非負實數成立；把 s 與 r 的角色互換（現在 r≥0 是較小者），得 r²<s²。",
          "en": "S03.1 holds for any two nonnegative reals; exchanging the roles of s and r (now r≥0 is the smaller one) gives r²<s²."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S03.1"
          ],
          "explanation": {
            "zh-Hant": "互換角色時需要較小的那個數 r≥0，這正是 r≥0 的假設。",
            "en": "Exchanging roles needs the smaller number r to be ≥0, which is the hypothesis r≥0."
          }
        },
        "leaf_basis": "order_basics + distributive"
      },
      {
        "id": "S03.4",
        "uses": [
          "S03.1",
          "S03.2",
          "S03.3"
        ],
        "before_tex": "s<r\\Rightarrow s^2<r^2,\\ s=r\\Rightarrow s^2=r^2,\\ s>r\\Rightarrow s^2>r^2",
        "after_tex": "s<r\\iff s^2<r^2,\\ s=r\\iff s^2=r^2,\\ s>r\\iff s^2>r^2",
        "relation": "implies",
        "rule": "case_analysis",
        "conditions": [
          "s\\ge 0",
          "r\\ge 0"
        ],
        "explanation": {
          "zh-Hant": "依三分律，s<r、s=r、s>r 恰有一個成立；s²、r² 之間的三種比較也恰有一個成立。設 s²<r²：若 s=r，S03.2 給 s²=r²；若 s>r，S03.3 給 s²>r²；兩者都與 s²<r² 衝突，所以 s<r。另兩種情形同理。三個正向蘊含，加上兩邊的情形各自互斥且窮盡，就得到三個雙向等價。S03.1 到 S03.4 合起來證得引理 L_sq_cmp。",
          "en": "By trichotomy exactly one of s<r, s=r, s>r holds, and exactly one of the three comparisons between s² and r² holds. Suppose s²<r²: if s=r, S03.2 gives s²=r²; if s>r, S03.3 gives s²>r²; both conflict with s²<r², so s<r. The other two cases are the same. Three forward implications, together with each side's cases being exclusive and exhaustive, give the three equivalences. S03.1 to S03.4 together prove Lemma L_sq_cmp."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S03.1",
            "S03.2",
            "S03.3",
            "order_basics",
            "case_analysis"
          ],
          "explanation": {
            "zh-Hant": "需要三種情形窮盡且互斥（三分律）；s、r 非負只在 S03.1、S03.3 用到。",
            "en": "It needs the three cases to be exhaustive and exclusive (trichotomy); nonnegativity of s and r is used only in S03.1 and S03.3."
          }
        },
        "leaf_basis": "case_analysis + order_basics + contradiction"
      },
      {
        "id": "S04",
        "uses": [
          "S02",
          "S03",
          "G2"
        ],
        "before_tex": "r=5",
        "after_tex": "P\\in C(O,5)\\iff (x-2)^2+(y+1)^2=25;\\ \\text{inside}\\iff <25;\\ \\text{outside}\\iff >25",
        "relation": "equivalent",
        "rule": "eq_replace",
        "conditions": [
          "r=5\\ge 0"
        ],
        "explanation": {
          "zh-Hant": "代入 r=5，r²=25。結合 S02 的距離平方公式與 S03 的等價，三種位置分別等價於 (x−2)²+(y+1)² 等於、小於、大於 25。之後每個點只需算一個整數。",
          "en": "Substitute r=5, so r²=25. Combining the squared-distance formula of S02 with the equivalences of S03, the three positions are equivalent to (x−2)²+(y+1)² being equal to, less than, or greater than 25. Each point now needs only one integer computation."
        },
        "reverse_audit": {
          "kind": "inverse_equivalence",
          "required_ids": [
            "S03",
            "eq_replace"
          ],
          "explanation": {
            "zh-Hant": "代換的是相等的量，三個等價由 S03 給出，雙向成立。",
            "en": "Equal quantities are substituted, and the three equivalences come from S03, so the step holds both ways."
          }
        },
        "leaf_basis": "eq_replace + numeric_evaluation"
      },
      {
        "id": "S05",
        "uses": [
          "S04",
          "G2"
        ],
        "before_tex": "A=(5,3)",
        "after_tex": "(5-2)^2+(3+1)^2=9+16=25\\ \\Rightarrow\\ A\\in C(O,5)",
        "relation": "implies",
        "rule": "numeric_evaluation",
        "conditions": [],
        "explanation": {
          "zh-Hant": "對 A：座標差為 (3,4)，3²+4²=9+16=25，等於 r²，依 S04，A 在圓上。",
          "en": "For A: the differences are (3,4) and 3²+4²=9+16=25, equal to r², so by S04 A lies on the circle."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S04",
            "numeric_evaluation"
          ],
          "explanation": {
            "zh-Hant": "依賴 S04 的等價與一次精確整數計算（N1）。",
            "en": "It relies on the equivalence of S04 and one exact integer computation (N1)."
          }
        },
        "leaf_basis": "numeric_evaluation + eq_replace"
      },
      {
        "id": "S06",
        "uses": [
          "S04",
          "S01",
          "G2"
        ],
        "before_tex": "B=(4,1)",
        "after_tex": "(4-2)^2+(1+1)^2=8<25\\ \\Rightarrow\\ B\\ \\text{inside},\\ B\\notin C(O,5)",
        "relation": "implies",
        "rule": "numeric_evaluation",
        "conditions": [],
        "explanation": {
          "zh-Hant": "對 B：2²+2²=8<25，依 S04，B 嚴格在圓內。依 S01，圓內的點不是 C(O,5) 的成員：B 在圓盤中，但不在圓上。這正是 MKO 提醒的「圓不是圓盤」。",
          "en": "For B: 2²+2²=8<25, so by S04 B is strictly inside. By S01 a strictly inside point is not a member of C(O,5): B lies in the disk but not on the circle. This is the MKO's warning that a circle is not a disk."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S04",
            "S01",
            "numeric_evaluation",
            "order_basics"
          ],
          "explanation": {
            "zh-Hant": "8<25 推出「圓內」，再由三分律推出 d(B,O)≠5，所以 B∉C(O,5)。",
            "en": "8<25 gives 'strictly inside', and trichotomy then gives d(B,O)≠5, so B∉C(O,5)."
          }
        },
        "leaf_basis": "numeric_evaluation + order_basics + mko_circle_def"
      },
      {
        "id": "S07",
        "uses": [
          "S04",
          "G2"
        ],
        "before_tex": "E=(-2,3)",
        "after_tex": "(-2-2)^2+(3+1)^2=16+16=32>25\\ \\Rightarrow\\ E\\ \\text{outside}",
        "relation": "implies",
        "rule": "numeric_evaluation",
        "conditions": [],
        "explanation": {
          "zh-Hant": "對 E：(−4)²+4²=16+16=32>25，依 S04，E 在圓外。注意 −2−2=−4 是負數，平方後為 16（neg_mul）。",
          "en": "For E: (−4)²+4²=16+16=32>25, so by S04 E is outside. Note that −2−2=−4 is negative; its square is 16 (neg_mul)."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S04",
            "numeric_evaluation",
            "neg_mul"
          ],
          "explanation": {
            "zh-Hant": "依賴 S04 與精確計算（N4、N5）；負的座標差不影響平方和的非負性。",
            "en": "It relies on S04 and exact computation (N4, N5); a negative coordinate difference does not affect the nonnegativity of the sum of squares."
          }
        },
        "leaf_basis": "numeric_evaluation + neg_mul"
      },
      {
        "id": "S08",
        "uses": [
          "S04",
          "G2"
        ],
        "before_tex": "O\\pm(5,0),\\ O\\pm(0,5)",
        "after_tex": "(7,-1),\\ (-3,-1),\\ (2,4),\\ (2,-6)\\in C(O,5)",
        "relation": "implies",
        "rule": "numeric_evaluation",
        "conditions": [],
        "explanation": {
          "zh-Hant": "以明示方向構造四個軸向點：O+(5,0)=(7,−1)、O−(5,0)=(−3,−1)、O+(0,5)=(2,4)、O−(0,5)=(2,−6)。它們與 O 的座標差分別是 (5,0)、(−5,0)、(0,5)、(0,−5)，距離平方都是 25+0=25，依 S04 全在圓上（假設 a3）。這是精確構造，不靠圖形目測。",
          "en": "Construct the four axial points from explicit directions: O+(5,0)=(7,−1), O−(5,0)=(−3,−1), O+(0,5)=(2,4), O−(0,5)=(2,−6). Their differences from O are (5,0), (−5,0), (0,5), (0,−5), each with squared distance 25+0=25, so by S04 all four lie on the circle (assumption a3). This is an exact construction, not a reading of a picture."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S04",
            "numeric_evaluation"
          ],
          "explanation": {
            "zh-Hant": "每點各算一次（N6 到 N9）；不宣稱圓上只有這四個整數點，例如 A 也在圓上。",
            "en": "Each point is computed once (N6 to N9); it is not claimed that these are the only integer points on the circle: A is on it too."
          }
        },
        "leaf_basis": "numeric_evaluation + neg_mul + mko_circle_def"
      },
      {
        "id": "S09",
        "uses": [
          "S08",
          "mko_distance_def",
          "sqrt_def"
        ],
        "before_tex": "U=(7,-1),\\ V=(-3,-1)",
        "after_tex": "d(U,V)=\\sqrt{10^2+0^2}=10=2r",
        "relation": "implies",
        "rule": "mko_distance_def",
        "conditions": [],
        "explanation": {
          "zh-Hant": "U、V 是兩個相對的軸向點。U−V=(10,0)，d(U,V)²=100+0=100；10≥0 且 10²=100，依 sqrt_def，d(U,V)=10=2·5。U、V 的中點是 ((7+(−3))/2, (−1+(−1))/2)=(2,−1)=O，所以 UV 是通過中心的弦，長度等於 MKO 所說的直徑長 2r。",
          "en": "U and V are two opposite axial points. U−V=(10,0) and d(U,V)²=100+0=100; since 10≥0 and 10²=100, sqrt_def gives d(U,V)=10=2·5. The midpoint of U and V is ((7+(−3))/2, (−1+(−1))/2)=(2,−1)=O, so UV is a chord through the center, and its length equals the diameter length 2r stated in the MKO."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S08",
            "mko_distance_def",
            "sqrt_def"
          ],
          "explanation": {
            "zh-Hant": "只核對這一對相對點的距離為 2r；直徑長 2r 本身是 MKO 的陳述，本稿不對一般通過中心的弦證明。",
            "en": "Only this pair of opposite points is checked to be 2r apart; the diameter length 2r itself is the MKO's statement and is not proved here for general chords through the center."
          }
        },
        "leaf_basis": "mko_distance_def + sqrt_def + numeric_evaluation"
      },
      {
        "id": "S10",
        "uses": [
          "S02",
          "S03",
          "G3",
          "L_sum_sq_zero"
        ],
        "before_tex": "P\\in C(O,0)",
        "after_tex": "P=O",
        "relation": "equivalent",
        "rule": "L_sum_sq_zero",
        "conditions": [
          "r=0"
        ],
        "explanation": {
          "zh-Hant": "對 r=0：依 S03（s=d(P,O)、r=0），P∈C(O,0) ⇔ d(P,O)²=0 ⇔ (x−2)²+(y+1)²=0。依引理 L_sum_sq_zero（u=x−2、v=y+1），這等價於 x−2=0 且 y+1=0，即 x=2、y=−1，也就是 P=O（有序對相等）。所以 C(O,0)={O}，是只含中心的退化點集。引理在 S10.1、S10.2 證明。",
          "en": "For r=0: by S03 (s=d(P,O), r=0), P∈C(O,0) ⇔ d(P,O)²=0 ⇔ (x−2)²+(y+1)²=0. By Lemma L_sum_sq_zero (u=x−2, v=y+1) this is equivalent to x−2=0 and y+1=0, that is x=2 and y=−1, which is P=O (equality of ordered pairs). So C(O,0)={O}, the degenerate point set containing only the center. The lemma is proved in S10.1 and S10.2."
        },
        "reverse_audit": {
          "kind": "inverse_equivalence",
          "required_ids": [
            "S03",
            "L_sum_sq_zero",
            "cartesian_product_def"
          ],
          "explanation": {
            "zh-Hant": "反向：P=O 時座標差都是 0，平方和為 0，d(O,O)=0=r。每一環都是雙向等價。",
            "en": "Backward: for P=O both differences are 0, the sum of squares is 0, and d(O,O)=0=r. Every link is a two-way equivalence."
          }
        },
        "leaf_basis": "L_sum_sq_zero + cartesian_product_def + eq_congruence"
      },
      {
        "id": "S10.1",
        "uses": [
          "square_nonneg",
          "order_basics"
        ],
        "before_tex": "u^2+v^2=0",
        "after_tex": "u^2=0\\ \\land\\ v^2=0",
        "relation": "equivalent",
        "rule": "square_nonneg",
        "conditions": [],
        "explanation": {
          "zh-Hant": "由 u²+v²=0 得 u²=−v²。v²≥0 推出 −v²≤0，所以 u²≤0；又 u²≥0（square_nonneg），依三分律 u²=0，於是 v²=0−u²=0。反向：0+0=0。",
          "en": "From u²+v²=0 we get u²=−v². Since v²≥0, −v²≤0, so u²≤0; also u²≥0 (square_nonneg), so by trichotomy u²=0, and then v²=0−u²=0. Backward: 0+0=0."
        },
        "reverse_audit": {
          "kind": "inverse_equivalence",
          "required_ids": [
            "square_nonneg",
            "order_basics",
            "add_inverse"
          ],
          "explanation": {
            "zh-Hant": "正向需要兩個平方都非負；若允許負項相消（例如 1+(−1)=0），結論不成立。反向是直接相加。",
            "en": "The forward direction needs both squares to be nonnegative; if negative terms could cancel (as in 1+(−1)=0) the conclusion would fail. The backward direction is plain addition."
          }
        },
        "leaf_basis": "square_nonneg + order_basics + add_inverse"
      },
      {
        "id": "S10.2",
        "uses": [
          "S10.1",
          "square_nonneg"
        ],
        "before_tex": "u^2=0\\ \\land\\ v^2=0",
        "after_tex": "u=0\\ \\land\\ v=0",
        "relation": "equivalent",
        "rule": "square_nonneg",
        "conditions": [],
        "explanation": {
          "zh-Hant": "依 square_nonneg 的第二部分 u²=0 ⇔ u=0，對 u、v 各用一次。S10.1 與 S10.2 合起來證得引理 L_sum_sq_zero。",
          "en": "By the second part of square_nonneg, u²=0 ⇔ u=0, used once for u and once for v. S10.1 and S10.2 together prove Lemma L_sum_sq_zero."
        },
        "reverse_audit": {
          "kind": "inverse_equivalence",
          "required_ids": [
            "square_nonneg"
          ],
          "explanation": {
            "zh-Hant": "u²=0 ⇔ u=0 本身是雙向的。",
            "en": "u²=0 ⇔ u=0 is itself two-way."
          }
        },
        "leaf_basis": "square_nonneg"
      },
      {
        "id": "S11",
        "uses": [
          "S02",
          "S10",
          "G3"
        ],
        "before_tex": "r=0,\\ d(P,O)<0\\ ?",
        "after_tex": "\\text{no point is strictly inside }C(O,0);\\ P\\neq O\\Rightarrow d(P,O)>0",
        "relation": "implies",
        "rule": "order_basics",
        "conditions": [
          "r=0"
        ],
        "explanation": {
          "zh-Hant": "r=0 時，圓內需要 d(P,O)<0；但 S02 給 d(P,O)≥0，依三分律兩者不能同時成立。所以 r=0 時沒有圓內點；每個 P≠O 都有 d(P,O)≠0（S10），再由 d≥0 得 d(P,O)>0，因此在圓外。中心 O 在圓上，不在圓內。",
          "en": "At r=0 being strictly inside needs d(P,O)<0, but S02 gives d(P,O)≥0, and by trichotomy both cannot hold. So at r=0 no point is strictly inside; every P≠O has d(P,O)≠0 (S10), and with d≥0 this gives d(P,O)>0, so P is outside. The center O is on the boundary, not inside."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S02",
            "S10",
            "order_basics"
          ],
          "explanation": {
            "zh-Hant": "只用到距離非負與 S10；這是 MKO 假設 a2「r=0 沒有內部，中心在圓上」。",
            "en": "It uses only nonnegativity of distance and S10; this is MKO assumption a2: at r=0 there is no interior, and the center lies on the boundary."
          }
        },
        "leaf_basis": "order_basics + contradiction"
      },
      {
        "id": "S12",
        "uses": [
          "S03",
          "S06",
          "S11",
          "G3"
        ],
        "before_tex": "B=(4,1),\\ r=0",
        "after_tex": "d(B,O)^2=8>0=0^2\\ \\Rightarrow\\ B\\ \\text{outside};\\ O\\pm(0,0)=O;\\ 2r=0",
        "relation": "implies",
        "rule": "numeric_evaluation",
        "conditions": [
          "r=0"
        ],
        "explanation": {
          "zh-Hant": "B 與 O 的距離平方仍是 8（S06），8>0=0²，依 S03 B 在 C(O,0) 之外。r=0 時四個軸向表示 O±(0,0) 都是同一點 O（假設 a3），直徑長 2·0=0。同一點 B 在 r=5 時是圓內點，在 r=0 時是圓外點：分類依賴半徑。",
          "en": "The squared distance from B to O is still 8 (S06), and 8>0=0², so by S03 B is outside C(O,0). At r=0 the four axial representations O±(0,0) are the same point O (assumption a3), and the diameter length is 2·0=0. The same point B is strictly inside for r=5 and outside for r=0: the classification depends on the radius."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "S03",
            "S06",
            "numeric_evaluation"
          ],
          "explanation": {
            "zh-Hant": "重用 S06 的距離平方，不需要新的距離計算。",
            "en": "It reuses the squared distance from S06; no new distance computation is needed."
          }
        },
        "leaf_basis": "numeric_evaluation + L_sq_cmp"
      },
      {
        "id": "S13",
        "uses": [
          "S05",
          "S06",
          "S07",
          "S08",
          "S09",
          "S10",
          "S11",
          "S12"
        ],
        "before_tex": "\\text{tasks of the goal}",
        "after_tex": "A\\ \\text{on},\\ B\\ \\text{inside},\\ E\\ \\text{outside};\\ C(O,0)=\\{O\\}",
        "relation": "implies",
        "rule": "and_intro_elim",
        "conditions": [],
        "explanation": {
          "zh-Hant": "合併：r=5 時 A 在圓上、B 在圓內（不屬於圓）、E 在圓外，四個軸向點在圓上，直徑長 10；r=0 時 C(O,0)={O}，沒有圓內點，B 在圓外。",
          "en": "Combine: for r=5, A is on the circle, B is strictly inside (not a member of the circle), E is outside, the four axial points are on the circle and the diameter length is 10; for r=0, C(O,0)={O}, no point is strictly inside, and B is outside."
        },
        "reverse_audit": {
          "kind": "sufficient_goal_reduction",
          "required_ids": [
            "S05",
            "S06",
            "S07",
            "S08",
            "S09",
            "S10",
            "S11",
            "S12"
          ],
          "explanation": {
            "zh-Hant": "目標 G：題目要求的各項判定。足夠條件 H：S05 到 S12 的結論同時成立；H⇒G 只用合取。H 由 G1 到 G3 正向推出，沒有把 G 當作前提。",
            "en": "Goal G: the classifications asked for in the task. Sufficient condition H: the conclusions of S05 to S12 hold together; H⇒G uses only conjunction. H is derived forwards from G1 to G3; G is never used as a premise."
          }
        },
        "leaf_basis": "and_intro_elim"
      }
    ],
    "result": {
      "zh-Hant": "對 O=(2,−1)、r=5：A 在圓上，B 嚴格在圓內（不是圓的成員），E 在圓外；四個軸向點 (7,−1)、(−3,−1)、(2,4)、(2,−6) 在圓上，相對兩點距離 10=2r。對 r=0：C(O,0)={O}，沒有圓內點，B 在圓外，直徑長 0。",
      "en": "For O=(2,−1) and r=5: A is on the circle, B is strictly inside (not a member of the circle), and E is outside; the four axial points (7,−1), (−3,−1), (2,4), (2,−6) are on the circle, and two opposite ones are 10=2r apart. For r=0: C(O,0)={O}, no point is strictly inside, B is outside, and the diameter length is 0."
    },
    "negative_controls": [
      {
        "claim": {
          "zh-Hant": "B=(4,1) 在圓內，所以 B 屬於圓 C(O,5)",
          "en": "B=(4,1) is inside, so B belongs to the circle C(O,5)"
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "C(O,5) 是邊界；d(B,O)²=8≠25，所以 B∉C(O,5)。",
          "en": "C(O,5) is the boundary; d(B,O)²=8≠25, so B∉C(O,5)."
        }
      },
      {
        "claim": {
          "zh-Hant": "因為 (−5)²=25，C(O,−5) 與 C(O,5) 是同一個圓",
          "en": "Since (−5)²=25, C(O,−5) and C(O,5) are the same circle"
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "負半徑不在論域內；若照字面，d(P,O)=−5 無解，因為距離非負，而 A∈C(O,5)。",
          "en": "Negative radii are outside the domain; read literally, d(P,O)=−5 has no solution because distances are nonnegative, whereas A∈C(O,5)."
        }
      },
      {
        "claim": {
          "zh-Hant": "r=0 時中心 O 在圓內",
          "en": "At r=0 the center O is strictly inside the circle"
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "d(O,O)=0 不小於 0；O 在圓上（C(O,0)={O}）。",
          "en": "d(O,O)=0 is not less than 0; O is on the boundary (C(O,0)={O})."
        }
      },
      {
        "claim": {
          "zh-Hant": "C(O,5) 的直徑長是 5",
          "en": "The diameter length of C(O,5) is 5"
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "5 是半徑；相對軸向點 (7,−1)、(−3,−1) 的距離是 10=2r。",
          "en": "5 is the radius; the opposite axial points (7,−1) and (−3,−1) are 10=2r apart."
        }
      }
    ],
    "status": "candidate",
    "gaps": [],
    "verification": {
      "structure": "checked_local_script",
      "mathematics": "candidate_argument",
      "formalization": "not_formalized"
    },
    "rule_glossary": [
      {
        "id": "numeric_evaluation",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "明確整數或有理數算式的精確求值；可以獨立重算。",
          "en": "Exact evaluation of an explicit integer or rational expression; independently recomputable."
        }
      },
      {
        "id": "square_nonneg",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "實數平方非負：對所有實數 u，u²≥0，且 u²=0 ⇔ u=0。",
          "en": "Squares are nonnegative: for every real u, u²≥0, and u²=0 ⇔ u=0."
        }
      },
      {
        "id": "sqrt_def",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "主平方根：對 a≥0，√a 是唯一滿足 b≥0 且 b²=a 的實數 b。負數在實數中沒有平方根。",
          "en": "Principal square root: for a≥0, √a is the unique real b with b≥0 and b²=a. Negative numbers have no real square root."
        }
      },
      {
        "id": "order_basics",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "實數的序：任兩數恰有 u<v、u=v、u>v 之一；u<v 且 v<w 推出 u<w；u<v 推出 u+w<v+w；u<v 且 w>0 推出 uw<vw；u<v 且 w<0 推出 uw>vw。",
          "en": "Order of the reals: exactly one of u<v, u=v, u>v holds; u<v and v<w give u<w; u<v gives u+w<v+w; u<v and w>0 give uw<vw; u<v and w<0 give uw>vw."
        }
      },
      {
        "id": "distributive",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "分配律：u(v+w)=uv+uw；配合乘法交換律也有 (v+w)u=vu+wu。",
          "en": "Distributivity: u(v+w)=uv+uw; with commutativity also (v+w)u=vu+wu."
        }
      },
      {
        "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": "add_inverse",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "加法反元素：每個 u 都有 −u，使 u+(−u)=0；u−v 定義為 u+(−v)。",
          "en": "Additive inverse: every u has −u with u+(−u)=0; u−v means u+(−v)."
        }
      },
      {
        "id": "mul_zero",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "乘以零：u·0=0。理由：u·0=u·(0+0)=u·0+u·0，兩邊同減 u·0 得 0=u·0。",
          "en": "Multiplying by zero: u·0=0. Reason: u·0=u·(0+0)=u·0+u·0; subtracting u·0 from both sides gives 0=u·0."
        }
      },
      {
        "id": "eq_congruence",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "等式同用：若 u=v，對兩邊做同一個有定義的運算 f，得 f(u)=f(v)。只對一邊做運算不屬於此規則。",
          "en": "Congruence of equality: if u=v, applying the same defined operation f to both sides gives f(u)=f(v). Operating on one side only is not an instance of this rule."
        }
      },
      {
        "id": "case_analysis",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "分情況論證：若 P∨Q 成立，且 P⇒R、Q⇒R 都已證，則 R 成立。所有情況必須涵蓋全部可能。",
          "en": "Proof by cases: if P∨Q holds and both P⇒R and Q⇒R are proved, then R holds. The cases must cover every possibility."
        }
      },
      {
        "id": "contradiction",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "反證法：若假設 ¬P 推出矛盾（某命題與其否定同時成立），則 P 成立。",
          "en": "Proof by contradiction: if assuming ¬P leads to a contradiction (a statement and its negation both hold), then P holds."
        }
      },
      {
        "id": "eq_replace",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "等值代換：命題中的一個式子可換成與它相等的式子，命題的真假不變。",
          "en": "Replacement of equals: an expression inside a statement may be replaced by an equal expression without changing whether the statement is true."
        }
      },
      {
        "id": "neg_mul",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "負號與乘法：(−u)v=−(uv)，(−u)(−v)=uv。",
          "en": "Signs and multiplication: (−u)v=−(uv) and (−u)(−v)=uv."
        }
      },
      {
        "id": "cartesian_product_def",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "笛卡兒積：A×B 是所有有序對 (a,b)（a∈A、b∈B）的集合；(a,b)=(c,d) ⇔ a=c 且 b=d。",
          "en": "Cartesian product: A×B is the set of ordered pairs (a,b) with a∈A and b∈B; (a,b)=(c,d) ⇔ a=c and b=d."
        }
      },
      {
        "id": "and_intro_elim",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "合取：由 P 與 Q 得 P∧Q；由 P∧Q 可分別得 P 與 Q。",
          "en": "Conjunction: from P and Q infer P∧Q; from P∧Q infer P and infer Q."
        }
      },
      {
        "id": "mko_circle_def",
        "kind": "cited",
        "source": {
          "mko_id": "mko-circle",
          "sha256": "f5666d01288a4c7140be59abad5dbf093293c9136d7d60dc752a79a497d99d2e",
          "commit": "b28a5edbd46279b1db2a3f3f48bb3f447e18899f"
        },
        "statement": {
          "zh-Hant": "在歐氏平面固定中心 O 與半徑 r≥0，C(O,r)={P:d(P,O)=r}；r>0 是通常的非退化圓，r=0 是僅含 O 的退化點集。點距中心小於、等於、大於 r 分別判為內、圓上、外；直徑長為 2r。",
          "en": "In the Euclidean plane, C(O,r)={P:d(P,O)=r} for r≥0. For r>0 this is the ordinary circle boundary; for r=0 it is the singleton {O}. Compare distance with r to classify a point as strictly inside, on the boundary, or outside. The diameter length is 2r."
        }
      },
      {
        "id": "mko_distance_def",
        "kind": "cited",
        "source": {
          "mko_id": "mko-distance-formula",
          "sha256": "153d0d0feabadaf33e08081677be0f81709df28ffa5bffaf0176a0f7875e5904",
          "commit": "b28a5edbd46279b1db2a3f3f48bb3f447e18899f"
        },
        "statement": {
          "zh-Hant": "在平面同一等單位正交座標系，P=(px,py)、Q=(qx,qy) 的歐氏距離為 d(P,Q)=√((qx−px)²+(qy−py)²)≥0。距離平方是兩個座標差平方之和；比較兩個距離可比較其非負平方值。",
          "en": "For P=(x1,y1) and Q=(x2,y2) in the same equal-unit orthonormal Cartesian frame, d(P,Q)=√((x2−x1)²+(y2−y1)²)≥0. Its square is the sum under the root; two such distances can be compared by their squares."
        }
      },
      {
        "id": "L_sq_cmp",
        "kind": "lemma",
        "proved_in": [
          "S03.1",
          "S03.2",
          "S03.3",
          "S03.4"
        ],
        "statement": {
          "zh-Hant": "對實數 s≥0、r≥0：s<r ⇔ s²<r²，s=r ⇔ s²=r²，s>r ⇔ s²>r²。",
          "en": "For reals s≥0 and r≥0: s<r ⇔ s²<r², s=r ⇔ s²=r², and s>r ⇔ s²>r²."
        }
      },
      {
        "id": "L_sum_sq_zero",
        "kind": "lemma",
        "proved_in": [
          "S10.1",
          "S10.2"
        ],
        "statement": {
          "zh-Hant": "對實數 u、v：u²+v²=0 ⇔ u=0 且 v=0。",
          "en": "For reals u and v: u²+v²=0 ⇔ u=0 and v=0."
        }
      }
    ],
    "revision_log": [],
    "numeric_checks": [
      {
        "id": "N1",
        "step": "S05",
        "lhs": "(5-2)**2+(3+1)**2",
        "rhs": "25"
      },
      {
        "id": "N2",
        "step": "S06",
        "lhs": "(4-2)**2+(1+1)**2",
        "rhs": "8"
      },
      {
        "id": "N3",
        "step": "S06",
        "lhs": "8",
        "relation": "<",
        "rhs": "25"
      },
      {
        "id": "N4",
        "step": "S07",
        "lhs": "(-2-2)**2+(3+1)**2",
        "rhs": "32"
      },
      {
        "id": "N5",
        "step": "S07",
        "lhs": "32",
        "relation": ">",
        "rhs": "25"
      },
      {
        "id": "N6",
        "step": "S08",
        "lhs": "(7-2)**2+(-1+1)**2",
        "rhs": "25"
      },
      {
        "id": "N7",
        "step": "S08",
        "lhs": "(-3-2)**2+(-1+1)**2",
        "rhs": "25"
      },
      {
        "id": "N8",
        "step": "S08",
        "lhs": "(2-2)**2+(4+1)**2",
        "rhs": "25"
      },
      {
        "id": "N9",
        "step": "S08",
        "lhs": "(2-2)**2+(-6+1)**2",
        "rhs": "25"
      },
      {
        "id": "N10",
        "step": "S09",
        "lhs": "(7-(-3))**2+(-1-(-1))**2",
        "rhs": "100"
      },
      {
        "id": "N11",
        "step": "S09",
        "lhs": "10**2",
        "rhs": "100"
      },
      {
        "id": "N12",
        "step": "S09",
        "lhs": "2*5",
        "rhs": "10"
      },
      {
        "id": "N13",
        "step": "S09",
        "lhs": "(7+(-3))/2",
        "rhs": "2"
      },
      {
        "id": "N14",
        "step": "S03.1",
        "vars": [
          "s",
          "r"
        ],
        "degree": 2,
        "lhs": "(r-s)*(r+s)",
        "rhs": "r**2-s**2"
      },
      {
        "id": "N15",
        "step": "S12",
        "lhs": "(4-2)**2+(1+1)**2",
        "relation": ">",
        "rhs": "0**2"
      },
      {
        "id": "N16",
        "lhs": "(-5)**2",
        "rhs": "5**2"
      },
      {
        "id": "N17",
        "lhs": "(-1-2)**2+(3+1)**2",
        "rhs": "25"
      }
    ]
  },
  "presentation": {
    "md_scope": {
      "zh-Hant": "只在 MKO 範圍內：歐氏平面、等單位正交框架、整數座標、非負整數半徑。完整證明兩個引理：非負距離與非負半徑可用平方比較；兩個平方之和為零當且僅當兩數皆為零。不處理負半徑（只在錯誤控制與反例中說明為何排除）、圓盤的面積或周長、與直線的交點，也不建立 Lean 的 Metric.sphere 橋接；不改動 canonical MKO 或英文 edition。",
      "en": "Inside the MKO's scope: the Euclidean plane, an equal-unit orthonormal frame, integer coordinates, a nonnegative integer radius. It fully proves two lemmas: a nonnegative distance and a nonnegative radius can be compared through their squares, and a sum of two squares is zero exactly when both numbers are zero. It does not treat negative radii (only explaining in an error control and a negative control why they are excluded), the area or circumference of a disk, or intersections with lines, and does not build the Lean Metric.sphere bridge; it does not change the canonical MKO or its English edition."
    },
    "md_symbols": [
      [
        "C(O,r)",
        "中心 O、半徑 r 的圓（邊界點集）",
        "the circle (boundary point set) with center O and radius r"
      ],
      [
        "d(P,O)",
        "點 P 到中心的歐氏距離",
        "the Euclidean distance from P to the center"
      ],
      [
        "r",
        "非負半徑",
        "the nonnegative radius"
      ],
      [
        "(x,y)",
        "一般點 P 的座標",
        "the coordinates of a general point P"
      ],
      [
        "s,u,v",
        "引理中的實數",
        "reals in the lemmas"
      ]
    ],
    "md_error_controls": [
      {
        "title": "圓不是圓盤 / A circle is not a disk",
        "zh": "MKO 的第一個誤解是把圓當圓盤。B 的距離平方 8<25，B 在圓內，但 C(O,5) 只含距離恰為 5 的點，所以 B∉C(O,5)（S06）。判定「在圓上」必須是等式，不是不等式。",
        "en": "The first misconception identified in the MKO is treating a circle as a disk. B has squared distance 8<25, so B is strictly inside, but C(O,5) contains only points at distance exactly 5, so B∉C(O,5) (S06). Being on the circle is an equation, not an inequality."
      },
      {
        "title": "零半徑沒有內部 / Radius zero has no interior",
        "zh": "r=0 時，圓內要求 d(P,O)<0，但距離非負，所以沒有圓內點；中心 O 滿足 d(O,O)=0=r，是圓上的唯一點（S10、S11）。把中心說成 r=0 的圓內點是 MKO 列出的誤解。",
        "en": "At r=0 being strictly inside requires d(P,O)<0, but distances are nonnegative, so no point is inside; the center O satisfies d(O,O)=0=r and is the only point on the boundary (S10, S11). Calling the center an inside point at r=0 is a misconception the MKO lists."
      },
      {
        "title": "為什麼排除負半徑 / Why negative radii are excluded",
        "zh": "S03 的平方等價需要 r≥0。若硬把 r=−5 代入，(−5)²=25 與 r=5 的平方相同，平方判定會誤把 A 當作在 C(O,−5) 上；但 d(A,O)=5≠−5，而且距離非負，所以 {P: d(P,O)=−5} 是空集。MKO 把負半徑排除在本輪論域之外，本稿也不處理。",
        "en": "The squared equivalence of S03 needs r≥0. If r=−5 were forced in, (−5)²=25 equals the square for r=5, and the squared test would wrongly put A on C(O,−5); but d(A,O)=5≠−5, and since distances are nonnegative, {P: d(P,O)=−5} is empty. The MKO puts negative radii outside this pulse's domain, and this guide does not treat them."
      }
    ],
    "md_open_items": [
      {
        "zh-Hant": "只核對了一對相對軸向點的距離為 2r；一般通過中心的弦長為 2r 的證明不在本稿。",
        "en": "Only one pair of opposite axial points is checked to be 2r apart; the proof that every chord through the center has length 2r is not in this guide."
      },
      {
        "zh-Hant": "本稿不宣稱列出 C(O,5) 上的全部整數點（例如 (−1,3) 也在圓上）。",
        "en": "This guide does not claim to list all integer points of C(O,5) (for example (−1,3) is also on it)."
      },
      {
        "zh-Hant": "MKO 的 formal next（綁定 Metric.sphere／ball，分開正半徑與零半徑）未做。",
        "en": "The MKO's formal next step (binding Metric.sphere and ball, separating positive and zero radius) is not done."
      }
    ]
  },
  "revision": {
    "id": "production-20261019-adopted-96",
    "source_commit": "b28a5edbd46279b1db2a3f3f48bb3f447e18899f",
    "adopted_source_sha256": "5b1c2150da0d22273b514a561fc6cc50da5d94f4fd7066a76a31e998bb2070bc",
    "original_source_sha256": "5b1c2150da0d22273b514a561fc6cc50da5d94f4fd7066a76a31e998bb2070bc",
    "owner_adopted": true,
    "bilingual_sync": "complete_source_bound",
    "formal_Lean": "NOT_RUN",
    "independent_AI_concurrence": "NOT_MEASURED",
    "issue_ids": [],
    "scope": "Owner-adopted natural-language teaching guide; not a formal proof, canonical MKO rewrite or evidence-status promotion."
  }
}
