About · 数据与方法

把数学知识当作可维护的数据

Math Idea Graph 不是问答系统。它把数学概念整理成一张有类型、有来源、可校验的知识网络, 页面只是这份数据的一种呈现方式。

01

四条原则

Principles
A没有 AI 生成

网站不调用任何大模型、不做 RAG、不使用 embedding。所有数学解释都来自data/ 下的 Markdown 与 JSON 文件;搜索是本地倒排索引,关系图由本地数据绘制。

B概念与定义分离

一个 Concept 可以有多条 Definition,每条定义有独立 ID、页面与来源。 例如「同伦等价」同时拥有标准定义与同伦范畴中的同构刻画。

C关系必须分型

不存在笼统的 related_to。逻辑依赖、学习顺序、推广、应用、思想联系与历史影响 分别记录,页面与关系图都按类型区分。

D不确定就标注

没有把握的年表、卷期或人物归属会标记为「待审核」,并给出复核说明。 当前知识库共有 23 个概念、26 条定义, 其中 6 个条目处于待审核状态。

02

数据模型

Data Model

所有实体共享同一个 ID 命名空间,ID 只使用小写字母、数字与连字符。

实体目录关键字段
Concept 概念data/concepts/*.mdid, name_zh, name_en, aliases, domain, summary, motivation, main_idea, extensions, sources
Definition 定义data/definitions/*.mdid, concept_id, statement, latex, applies_to, conditions, explanation, prerequisites, sources
Relation 关系data/relations/*.jsonid, source, target, type, note, conditions, sources, review_status
History 历史事件data/history/*.mdid, title, year, precision, people, concept_ids, sources
Source 文献data/sources.jsonid, authors, title, year, venue, type, url, locator
Domain 领域data/domains.jsonid, name_zh, name_en, summary, order

关系类型(全部有独立语义)

type含义分组
requiressource 的严格定义在逻辑上使用了 target;没有 target 就无法陈述 source。logical
learning_prerequisite教学建议:先学 target 再学 source,但两者之间不一定存在逻辑依赖。learning
generalizessource 是 target 的严格推广:target 的每个实例都是 source 的实例。logical
special_case_ofsource 是 target 在附加条件下的特例(与 generalizes 方向相反)。logical
equivalent_to两种表述在给定条件下刻画同一个数学对象;不是「相似」,而是可互相推出。logical
constructed_fromsource 的对象由 target 的数据/结构构造出来(如基本群由道路同伦类构造)。logical
applies_to把 source 的工具用于研究 target 的结构,但 target 不依赖于 source 的定义。application
invariant_undersource 在 target 所代表的变换下保持不变,因此可用于区分等价类。application
conceptual_connection两者在思想方法上互相照亮,但不构成可形式化的依赖或推广。conceptual
inspired_bysource 的问题意识或方法来自 target,但两者不是同一理论的分支。conceptual
historical_influencetarget 的提出在历史上直接推动了 source 的形成(史实关系,需文献支持)。historical

延伸探索的分组

  • direct_generalization — 直接数学推广:把当前定义的条件放宽、对象替换或维度提升后得到的理论。
  • application — 理论应用:把这里的工具用到其他数学分支中的方向。
  • conceptual_connection — 思想联系:问题意识或方法论上的呼应,不一定是形式化依赖。
  • modern_development — 现代发展:当代研究中的活跃方向,通常需要更多预备知识。
03

校验与审核

Validation & Review

npm run validate 会检查:字段完整性与类型、全实体 ID 唯一、关系两端存在、 定义与历史事件的概念引用存在、来源已登记、延伸条目与相关定义不断链、关系类型合法、自环与重复关系、 LaTeX 是否可被 KaTeX 解析,以及空字段、日期格式、未使用来源与关系图连通性。

每条内容都带有 review_status:approved 表示所列文献已核对;pending 表示尚未完成核对,页面会显示「待审核」徽标。 本知识库优先保留不确定性,而不是用看似确定的叙述填补空白。

04

引用与来源

Citations

每页底部列出该条目的文献来源(作者、标题、年份、出版信息、章节或页码)。 历史事件的描述必须至少关联一条来源,否则校验脚本会报错。 对于手稿、未正式出版材料或卷期待核的条目,来源本身也会标注待审核。

引用文献的版权归原出版方所有;本站只提供书目信息与必要的简短转述。

05

如何添加内容

Contributing
  1. 新增概念:在 data/concepts/ 添加一个 <id>.md,填写 YAML frontmatter 与可选正文。
  2. 新增定义:在 data/definitions/ 添加文件,concept_id 指向已有概念。
  3. 新增关系:在 data/relations/ 的 JSON 数组中追加对象,source / target 必须存在。
  4. 新增历史事件:在 data/history/ 添加文件,并至少关联一条已登记的来源。
  5. 新增或复用文献:在 data/sources.json 登记。
  6. 运行 npm run validate 与 npm run build;页面与搜索索引会自动更新,无需改页面代码。

完整字段说明、部署步骤与目录结构见仓库根目录的 README.md。

06

技术实现

Stack
站点框架Astro(纯静态输出,无 SSR、无后端)
语言TypeScript + HTML/CSS
公式KaTeX,在构建期渲染为静态 HTML
搜索MiniSearch,索引在构建期生成,中文按单字 + 二元组切分
关系图Cytoscape.js,局部图与全局图共用同一份图数据
部署GitHub Pages(子路径通过 BASE_URL 处理)
07

已知限制

Limitations
  • 知识库目前以代数拓扑与几何群论为主,覆盖面有限。
  • 部分历史条目的卷期页码仍待核对(见各来源条目的「待审核」说明)。
  • 关系图不做自动布局优化,节点很多时需要手动拖动或按类型筛选。
  • 搜索为字面匹配 + 中文二元组,不理解同义词;别名需要在数据中显式登记。