Use this skill to create reproducible LaTeX paper projects for MCM/ICM and CUMCM. Prefer the templates in this skill, keep dependencies explicit, and avoid embedding real identity information.
-
For CUMCM, follow templates/cumcm/STYLE_GUIDE.md when generating paper structure or examples.
-
Use the default section order: 摘要, 问题重述, 问题分析, 模型假设, 符号说明, 数据预处理, 模型建立与求解, 模型检验, 模型评价与推广, 参考文献, 附录.
-
Render level-one CUMCM sections as Chinese numerals with a dunhao, such as 一、问题重述; render subsections as 1.1 问题背景.
-
Do not create a standalone subsection named 总体思路, 总体模型思路, 整体思路, or similar in CUMCM final-style papers. In excellent-paper style, 问题分析 should normally be organized by subproblem, such as 2.1 问题一的分析, 2.2 问题二的分析, and 2.3 问题三的分析. If a route explanation is needed, write it as a short paragraph inside the relevant analysis section or use a 模型流程图; do not add 2.4 总体思路.
-
CUMCM keywords must be mathematical-modeling terms, preferably terms found in mathematical modeling textbooks or common contest papers. Use model/method/algorithm/evaluation terms such as 优化模型, 线性规划, 混合整数规划, 目标规划, 动态规划, 蒙特卡洛模拟, 回归分析, 聚类分析, 主成分分析, 层次分析法, 综合评价, 风险决策, 敏感性分析, 鲁棒性分析, 时间序列, and 灰色预测. Avoid using research objects, industry scenarios, or题目背景词 as keywords, such as 农作物种植策略, 乡村农业, 蔬菜销售, or 交通问题, unless they are paired with a recognized modeling method and the user explicitly requires a domain keyword.
-
Before delivering a CUMCM project, run python scripts/check_latex_keywords.py main.tex and revise keywords that fail the modeling-term check.
-
Standardize the data section title as 数据预处理. Do not use 数据读取与预处理, 数据剔写, 数据说明与读取, or other ad-hoc titles in final-style CUMCM papers.
-
Write model assumptions as a numbered list. Each item must follow the pattern 假设 n:...。解释:... so the assumption and its modeling justification are both visible.
-
Do not add non-paper chapters such as 编译测试结果, LaTeX 测试说明, or standalone 算法实现说明 to CUMCM example PDFs. Put run commands, compile notes, and code explanations in README or appendices.
-
In the abstract and result sections, never invent numerical results. Use explicit placeholders when no solver output exists.
-
Do not use latexmk -pdf for CUMCM Chinese templates; it forces pdfLaTeX in many latexmk versions and can fail on ctexart/XeLaTeX font handling.
-
For MCM/ICM, run scripts/check_latex_env.py --contest mcm-icm first to verify mcmthesis.cls. If mcmthesis.cls is missing, stop MCM/ICM project generation or compilation and tell the user to install mcmthesis through TeX Live, MiKTeX, or their TeX package manager before retrying.
-
For CUMCM, run scripts/check_latex_env.py --contest cumcm first. Prefer the local templates/cumcm/cumcmthesis.cls compatibility class when copied with the project. If no local or TeX-tree cumcmthesis.cls is available, default to templates/cumcm/main-ctexart-fallback.tex; this is a warning, not a failure, as long as the ctexart fallback is available.
-
Only when the user explicitly requires a third-party/full cumcmthesis class or strict official-class compatibility beyond the local compatibility class, ask the user to provide that class and verify its license/font requirements/current-year compliance.
-
If use_ref_bib = true, add --use-ref-bib to the same contest-specific environment check, for example scripts/check_latex_env.py --contest mcm-icm --use-ref-bib.
-
Do not make successful compilation depend on network access. Network downloads are not a valid build step.
-
Before the contest, freeze the final compilable template and dependencies together, including allowed class files. Do not bundle font files unless their license clearly permits redistribution and the user intentionally provides them.
When copying a bundled template into a new paper project, copy the template-local latexmkrc as well. The CUMCM template-local latexmkrc enforces XeLaTeX and provides a BibTeX fallback; the MCM/ICM template-local latexmkrc only provides the BibTeX fallback so latexmk -pdf main.tex remains the expected workflow.