{
  "schema_version": "ocme-derivation-reader-v1",
  "guide_id": "derivation-mko-pigeonhole-principle-01",
  "mko_id": "mko-pigeonhole-principle",
  "title": {
    "zh-Hant": "完整映射的碰撞與ceil負載",
    "en": "Collision and ceiling load in a complete map"
  },
  "contract": {
    "schema_version": "ocme-derivation-guide-v0.1",
    "guide_id": "derivation-mko-pigeonhole-principle-01",
    "source": {
      "mko_id": "mko-pigeonhole-principle",
      "commit": "b1b2f1dcf8c50d67a93fe52d95f8eef7b3abba9f",
      "sha256": "3a161ec4318e1b1c3993a14395e4e5710b5529f42a9311aa9b041380c9b9eaba",
      "english_sha256": "4ea6bc9d5425a0918302e7a898231e46d17e569bb3d5b6c5661e5c57bd32235b"
    },
    "mode": "theorem_proof",
    "audience_prerequisites": [
      "work"
    ],
    "goal": {
      "zh-Hant": "從全部fibers證碰撞及廣義下界。",
      "en": "Use all fibres to prove a collision and the generalized lower bound."
    },
    "givens": [
      {
        "id": "G1",
        "statement": {
          "zh-Hant": "A={0,1,2,3,4}，B={a,b}，f的完整table為(a,b,a,b,a)。",
          "en": "A={0,1,2,3,4}, B={a,b}, with complete f table(a,b,a,b,a)."
        }
      }
    ],
    "steps": [
      {
        "id": "S01",
        "uses": [
          "G1",
          "work"
        ],
        "before_tex": "f=(a,b,a,b,a)",
        "after_tex": "\\forall x\\in A:\\ \\exists!y\\in B:\\ f(x)=y",
        "relation": "implies",
        "rule": "work",
        "conditions": [],
        "explanation": {
          "zh-Hant": "五個domain元素各有唯一合法像，total資格完成。",
          "en": "Each of the five domain elements has one legal image, proving totality."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "work"
          ],
          "explanation": {
            "zh-Hant": "不能省略4的entry。",
            "en": "The entry for4 cannot be omitted."
          }
        },
        "leaf_basis": "work"
      },
      {
        "id": "S02",
        "uses": [
          "G1",
          "S01",
          "work"
        ],
        "before_tex": "|A|=5,\\quad|B|=2",
        "after_tex": "|A|>|B|",
        "relation": "implies",
        "rule": "work",
        "conditions": [],
        "explanation": {
          "zh-Hant": "有限大小嚴格不等。",
          "en": "The finite sizes satisfy the strict inequality."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "S01",
            "work"
          ],
          "explanation": {
            "zh-Hant": "相等大小不由此定理保證碰撞。",
            "en": "Equal sizes would not trigger this collision guarantee."
          }
        },
        "leaf_basis": "work"
      },
      {
        "id": "S03",
        "uses": [
          "G1",
          "S02",
          "work"
        ],
        "before_tex": "f^{-1}(a)",
        "after_tex": "\\{0,2,4\\},\\quad\\ell_a=3",
        "relation": "implies",
        "rule": "work",
        "conditions": [],
        "explanation": {
          "zh-Hant": "列a的完整fiber與load。",
          "en": "List the complete fibre over a and its load."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "S02",
            "work"
          ],
          "explanation": {
            "zh-Hant": "0、2、4為三個不同原像。",
            "en": "0,2,4 are three distinct preimages."
          }
        },
        "leaf_basis": "work"
      },
      {
        "id": "S04",
        "uses": [
          "G1",
          "S03",
          "work"
        ],
        "before_tex": "f^{-1}(b)",
        "after_tex": "\\{1,3\\},\\quad\\ell_b=2",
        "relation": "implies",
        "rule": "work",
        "conditions": [],
        "explanation": {
          "zh-Hant": "另一fiber也列完，兩fiber互斥且coverA。",
          "en": "Complete the other fibre; both are disjoint and cover A."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "S03",
            "work"
          ],
          "explanation": {
            "zh-Hant": "load總和3+2=5作完整性核對。",
            "en": "The load sum3+2=5 cross-checks completeness."
          }
        },
        "leaf_basis": "work"
      },
      {
        "id": "S05",
        "uses": [
          "G1",
          "S04",
          "work"
        ],
        "before_tex": "0\\ne2,\\quad f(0)=a=f(2)",
        "after_tex": "f\\text{ is not injective}",
        "relation": "implies",
        "rule": "work",
        "conditions": [],
        "explanation": {
          "zh-Hant": "給實際兩個不同domain元素的碰撞witness。",
          "en": "Give an actual collision witness with two distinct domain elements."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "S04",
            "work"
          ],
          "explanation": {
            "zh-Hant": "f(0)=f(0)不是合法不同元素witness。",
            "en": "f(0)=f(0) is not a witness using distinct elements."
          }
        },
        "leaf_basis": "work"
      },
      {
        "id": "S06",
        "uses": [
          "G1",
          "S05",
          "work"
        ],
        "before_tex": "\\lceil|A|/|B|\\rceil=\\lceil5/2\\rceil",
        "after_tex": "\\max(\\ell_a,\\ell_b)=3\\ge3",
        "relation": "implies",
        "rule": "work",
        "conditions": [],
        "explanation": {
          "zh-Hant": "廣義下界的ceil為3，本例達到。",
          "en": "The generalized ceiling bound is 3 and is attained here."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "S05",
            "work"
          ],
          "explanation": {
            "zh-Hant": "codomain非空才有此商。",
            "en": "A nonempty codomain is required for this quotient."
          }
        },
        "leaf_basis": "work"
      },
      {
        "id": "S07",
        "uses": [
          "G1",
          "S06",
          "work"
        ],
        "before_tex": "\\ell_b\\le q-1\\text{ for every box},\\quad q=\\lceil m/k\\rceil",
        "after_tex": "m=\\sum_b\\ell_b\\le k(q-1)<m\\quad(k\\ge1)",
        "relation": "implies",
        "rule": "work",
        "conditions": [],
        "explanation": {
          "zh-Hant": "若所有load小於ceil，總數矛盾；因此至少一load達ceil。",
          "en": "If every load were below the ceiling, their sum would contradict the domain size m; therefore at least one load is at least ceil(m/k)."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "S06",
            "work"
          ],
          "explanation": {
            "zh-Hant": "ceil定義給q-1<m/k，乘正k保序。",
            "en": "The ceiling definition gives q-1<m/k; multiply by positive k."
          }
        },
        "leaf_basis": "work"
      },
      {
        "id": "S08",
        "uses": [
          "G1",
          "S07",
          "work"
        ],
        "before_tex": "A'=\\{0,1\\},\\ B'=\\{a,b\\},\\ g=(a,a)",
        "after_tex": "|A'|\\le|B'|\\quad\\text{but }g\\text{ not injective}",
        "relation": "implies",
        "rule": "work",
        "conditions": [],
        "explanation": {
          "zh-Hant": "完整反例否定大小條件的錯誤逆命題。",
          "en": "A complete counterexample refutes the erroneous converse size condition."
        },
        "reverse_audit": {
          "kind": "premise_audit",
          "required_ids": [
            "G1",
            "S07",
            "work"
          ],
          "explanation": {
            "zh-Hant": "小domain不強迫任意map單射。",
            "en": "A smaller domain does not force an arbitrary map to be injective."
          }
        },
        "leaf_basis": "work"
      }
    ],
    "result": {
      "zh-Hant": "0與2碰撞，最大load3=ceil(5/2)；大小逆條件不保證單射。",
      "en": "0 and 2 collide and maximum load3=ceil(5/2); the reverse size condition does not ensure injectivity."
    },
    "negative_controls": [
      {
        "claim": {
          "zh-Hant": "f(0)=f(0)就是碰撞證書。",
          "en": "f(0)=f(0) is a collision certificate."
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "原像必須不同。",
          "en": "The preimages must be distinct."
        }
      },
      {
        "claim": {
          "zh-Hant": "|A|≤|B|就強迫f單射。",
          "en": "|A|≤|B| forces f injective."
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "g=(a,a)是完整反例。",
          "en": "g=(a,a) is a complete counterexample."
        }
      },
      {
        "claim": {
          "zh-Hant": "最大load下界為floor(5/2)=2即可exact表示廣義定理。",
          "en": "Floor(5/2)=2 is the exact generalized bound."
        },
        "expected": "reject",
        "reason": {
          "zh-Hant": "定理下界為ceil=3，兩者不可混用。",
          "en": "The theorem's bound is the ceiling3, not the floor2."
        }
      }
    ],
    "status": "candidate",
    "gaps": [],
    "verification": {
      "structure": "checked_local_script",
      "mathematics": "candidate_argument",
      "formalization": "not_formalized"
    },
    "rule_glossary": [
      {
        "id": "mko_definition",
        "kind": "cited",
        "statement": {
          "zh-Hant": "對完整有限A、B與total f:A→B，|A|>|B|推出存在a1!=a2且f(a1)=f(a2)。|A|<=|B|不保證給定map單射；generalized版本的最大load至少ceil(|A|/|B|)須另行明示。",
          "en": "For complete finite A,B and total f:A→B, |A|>|B| implies distinct a1,a2 with f(a1)=f(a2). The reverse size condition does not generally certify a given map injective. The generalized maximum-load bound is ceil(|A|/|B|), with a nonempty codomain."
        },
        "source": {
          "mko_id": "mko-pigeonhole-principle",
          "sha256": "3a161ec4318e1b1c3993a14395e4e5710b5529f42a9311aa9b041380c9b9eaba",
          "commit": "b1b2f1dcf8c50d67a93fe52d95f8eef7b3abba9f"
        }
      },
      {
        "id": "work",
        "kind": "prerequisite",
        "statement": {
          "zh-Hant": "finite total map的fibers形成partition；load總和等於domain大小；ceil(r)-1<r。",
          "en": "Fibres of a finite total map form a partition; loads sum to the domain size; ceil(r)-1<r."
        }
      }
    ],
    "revision_log": [],
    "numeric_checks": [
      {
        "id": "N01",
        "lhs": "3+2",
        "rhs": "5"
      },
      {
        "id": "N02",
        "lhs": "(5+2-1)//2",
        "rhs": "3"
      }
    ]
  },
  "presentation": {
    "md_scope": {
      "zh-Hant": "有限total map、非空codomain；不由抽樣推一般映射。",
      "en": "A finite total map with nonempty codomain; no sampling inference about general maps."
    },
    "md_symbols": [
      [
        "ℓ_b",
        "box b的load",
        "load of box b"
      ],
      [
        "m,k",
        "domain與codomain大小",
        "domain and codomain sizes"
      ]
    ],
    "md_error_controls": [
      {
        "title": "total性 / Totality",
        "zh": "五個entry全列且值皆在B。",
        "en": "List all five entries with values in B."
      },
      {
        "title": "ceil / Ceiling",
        "zh": "5除2向上取整為3，不用截斷除法。",
        "en": "Round5/2 upward to 3, not truncation."
      }
    ],
    "md_open_items": []
  },
  "revision": {
    "id": "ocme-new142-reader-adoption-20261021",
    "collection": "coverage-20261021",
    "source_commit": "b1b2f1dcf8c50d67a93fe52d95f8eef7b3abba9f",
    "adopted_source_sha256": "48e01e622b425eb10256bc6b5df9a4828d74b8b553ae3c51ccf7fa2cb0e937d4",
    "original_source_sha256": "f37dc77a23f2d409b8bd4520337371982021634ea482500e91e66470d7d0c189",
    "owner_adopted": true,
    "bilingual_sync": "complete_source_bound",
    "formal_Lean": "NOT_RUN",
    "reader_review": "142_of_142_source_bound",
    "wording_review": "original_Lead_decisions_resolved",
    "glossary_reader_paraphrases": [],
    "independent_AI_concurrence": "SCOPED_LEAD_AND_BILINGUAL_CONTEXT_REVIEW",
    "issue_ids": [
      "BR142-S125",
      "BR142-S124",
      "BR142-S123",
      "BR142-P043"
    ],
    "parent_manifest_sha256": "d29f4cae8229ebd24f60d496cb1d3cd4ad8c0a4dca9d44daab0c3245c544283a",
    "scope": "Owner-adopted reader revision. Lead and bilingual review concern the recorded text and premises; no new universal or Lean proof, canonical promotion or historical-label rewrite."
  }
}
