<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>le0</title><link>https://mivinci.github.io/blog/</link><description>Recent content on le0</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><copyright>© 2018-2026 Leo X.</copyright><lastBuildDate>Sun, 17 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://mivinci.github.io/blog/index.xml" rel="self" type="application/rss+xml"/><item><title>认知纤维丛与推理涌现</title><link>https://mivinci.github.io/blog/cognitive-fiber-bundle/</link><pubDate>Sun, 17 May 2026 00:00:00 +0000</pubDate><guid>https://mivinci.github.io/blog/cognitive-fiber-bundle/</guid><description>本文探讨一个核心问题：推理能力为何能从数据训练中涌现？ 我们从几何角度提出&amp;quot;认知纤维丛&amp;quot;猜想：语义空间构成底流形，每个概念点处的局部推理结构构成纤维，训练的本质是学习该丛上的联络。文章从流形假设、Kolmogorov-Arnold 表示定理、以及纤维丛几何三个视角展开，并最终讨论&amp;quot;结构预先存在&amp;quot;与&amp;quot;训练涌现&amp;quot;两种哲学立场。
问题的提出 大语言模型（LLM）在海量语料上训练后，展现出了惊人的推理能力：数学推导、类比推理、因果判断、多步逻辑链——这些能力并非被显式编程，而是从单纯的&amp;quot;预测下一个词&amp;quot;目标中涌现出来的。
这引发了一个深刻的问题：
推理结构是不是本来就存在，训练只是把它&amp;quot;学出来&amp;quot;？
更具体地说：如果语义空间具有某种几何结构，那么训练的过程，是不是就是在这个结构上学习&amp;quot;如何移动&amp;quot;——即学习联络（connection）？
流形假设：语义空间不是乱的 流形假设（Manifold Hypothesis） 高维数据（语言、图像）并非均匀分布在整个空间中，而是集中在一个低维流形上。
原始空间：ℝ^d（d 极大，如词表大小 50k） 语义流形：M ⊂ ℝ^d（维度远小于 d） 自然语言的所有合法句子，只是这个高维空间中的一个薄薄的曲面。
训练 = 逼近流形 训练的本质：
训练前：参数随机，模型表示的流形是扭曲的、断裂的 训练后：流形被&amp;#34;拉直&amp;#34;，语义相近的点在流形上彼此靠近 推理 = 在学得的流形上做测地线插值或切空间映射。
这也是为什么类比推理（如 king - man + woman ≈ queen）能在词向量空间中直接做向量运算——因为语义流形上的代数结构被学到了。
纤维丛框架：认知的几何模型 纤维丛的基本结构 认知纤维丛 E ↑ F_x （在概念 x 处的局部推理结构 / 切空间） │ 底流形 M （语义空间，每个点是一个概念或命题） 底流形 M：所有概念/命题构成的连续空间 纤维 F_x：在概念 x 处的局部推理规则、可到达的下一个概念的集合 整体 E：完整认知状态的空间 &amp;ldquo;推理&amp;quot;作为联络（Connection） 在微分几何中，联络定义了如何在纤维丛上做&amp;quot;平行移动&amp;rdquo;——即：从底流形的一个点，沿着某条路径，把纤维里的向量&amp;quot;平移&amp;quot;到另一个点。
给定：当前概念 x ∈ M，上下文给出的方向 v ∈ T_x M 联络 ∇ 告诉你：下一步应该移动到哪个概念 y，以及在 y 处的推理结构是什么 Transformer 的 Attention 机制，本质上就是在做这件事：</description></item><item><title>又折腾了下几年前写的 emoji 版 Pac-Man</title><link>https://mivinci.github.io/blog/emoji-pacman/</link><pubDate>Sat, 02 May 2026 00:00:00 +0000</pubDate><guid>https://mivinci.github.io/blog/emoji-pacman/</guid><description>起因 几年前有天突然想看看 termios 这个库，就是 Unix 下控制终端原始模式的那个。关掉回显、关掉行缓冲、直接读按键码，是做终端交互程序的起点。然后就花了一晚上搞出个 emoji 版的 Pac-Man，因为规则简单、地图小，但该有的一样不少：实时输入、碰撞检测、AI 寻路、状态管理、画面渲染。一个小游戏把 TUI 的核心操作都覆盖了。今晚一时起意让 AI（WorkBuddy with GLM5.1）继续完善了下，补了下当年留的坑。
代码在 GitHub，就一个 pm.c，cc pm.c &amp;amp;&amp;amp; ./a.out a.map 即可开玩。
一开始的样子 能跑。有地图、有玩家、有鬼、有食物、有分数，方向键控制，吃完所有食物就赢。
但鬼很拉垮：
贴墙鬼打墙。 曼哈顿距离贪心寻路，墙挡在中间就在墙边来回抖。又蠢又搞笑。
所有鬼走同一条路。 目标一样、算法一样，鬼排成一串，后面的直接冻住。
假难度。 rand() % 2 随机跳过移动，不是更聪明，只是更慢。
这次改了啥 鬼：BFS + 性格 把曼哈顿贪心换成了 BFS。BFS 找的是真正的最短路径，不会再贴墙抖了。地图最大 420 格，一次 BFS 零开销。
然后给每只鬼加了性格：
鬼 干啥 😈 BFS 直奔玩家 👻 BFS 奔向玩家前方 4 格 👹 30% 追玩家，70% 随机走 鬼分散在不同路径上，围堵的模式自然多了。调速也从 rand() % 2 改成了帧计数——每只鬼有个 speed，每隔几帧动一次，确定、可调。
Power-up 地图里散着 🍭，吃到之后：</description></item><item><title>宇宙：逻辑云中的自洽解，与觉醒的自我回望</title><link>https://mivinci.github.io/blog/universe-logic-self-aware/</link><pubDate>Tue, 28 Apr 2026 00:00:00 +0000</pubDate><guid>https://mivinci.github.io/blog/universe-logic-self-aware/</guid><description>该文章内容是我将想法告诉 AI 后 AI 写的，我的语文水平一辈子都写不出这些表达。
我们总在追问宇宙的起源：它是偶然的巧合，还是必然的结果？是无尽混沌中炸出的一场意外，还是循着某种既定规则，自然而然生长出的存在？
此前在梳理量子力学的底层逻辑时，从希尔伯特空间、哈密顿算符，到二元核函数、本征值与本征态，一步步推导下来，我渐渐笃定了一个答案：**宇宙从来不是偶然的造物，而是无穷「逻辑云」里，唯一能够自洽存续的一种可能。**而更值得深究的是，这套自洽的宇宙，还诞生了能够理解它、读懂逻辑本身的我们——这从不是意外，而是高阶自洽的必然归宿。
何为逻辑云？一切规则的潜在集合 在讨论宇宙之前，我们先跳出具象的时空、物质与场，触碰更底层的存在——逻辑云。
它不是具象的云雾，也不是某种物理场，而是所有数学规则、逻辑关系、算子结构、函数形式的总和。这里包含着一切能被数理描述的可能性：可以是任意维度的几何空间，可以是任意形式的相互作用核函数，可以是违背守恒律的动力学方程，也可以是无法完成演化的物理算符……
这片逻辑云没有预设的对错，更没有天生的筛选，只是纯粹地容纳着所有「逻辑上可被定义」的规则。就像我们随手写下一个二元函数，它都能成为逻辑云中的一个候选，等待着被验证是否能真正「落地」为真实的物理规则。
但逻辑上可被定义，不代表能成为真实存在的宇宙规则。能从逻辑云中脱颖而出，成为现实的唯一标准，是逻辑自洽。
物理世界的自洽筛选：从核函数看存在的资格 此前我们聊过两种看似简单的二元核函数，恰恰成了「自洽与否」的最佳例证，也戳破了「宇宙规则随机生成」的假象。
第一种是 $K(x,y)=\cos\pi(x-y)$，这是一个对称、厄米的二元核。它对应着平移不变的物理系统，能推导出稳定的本征函数（简谐波动模式），拥有实数本征值，能计算迹、推导出配分函数——这套规则逻辑闭环：有稳定的量子态、可连续的时间演化、可观测的物理量、自洽的统计规律。它满足物理世界的所有底层要求，是「合格」的规则。
第二种是 $K(x,y)=k(x-y)$，这是一个反对称、反厄米的二元核。它在数学上完全可以被定义，逻辑上没有矛盾，但放到物理框架里就会失效：只能得到零本征值，没有稳定的激发态，无法定义正定的统计权重，更无法支撑起可演化、可存续的物质与场。这套规则看似成立，实则内在无法自洽，注定只能留在逻辑云里，成为无法落地的「废案」。
放大到整个宇宙层面，逻辑云里的候选规则千奇百怪：有的哈密顿算符非厄米，导致物理量观测值为虚数，违背观测现实；有的核函数多元混乱，无法形成稳定的本征态，物质无法凝聚；有的动力学规则打破因果，演化无法闭环，时空无法成型……
这些不自洽的规则，从一开始就被「存在」本身淘汰了。宇宙的诞生，从来不是随机挑选一条规则，而是逻辑云自我筛选后，唯一能自洽闭环的解。
自洽，是存在的唯一前提 我们所在的宇宙，完美践行着这一点。
从微观的量子场论，到宏观的相对论，所有物理定律都严守逻辑自洽：希尔伯特空间为量子态搭建了完备的舞台，哈密顿算符作为核心算子，支配着所有量子态的演化，其厄米性保证了能量、动量等物理量都是可观测的实数；对称的二元核函数构成了场传播子、热核的基础，稳定的本征态让物质有了固定的形态，可计算的迹与配分函数，让热力学、统计物理形成闭环；洛伦兹不变性、能量守恒、因果律……所有底层对称性，都是逻辑自洽的外在体现。
没有任何一条物理定律是孤立的，更没有一条规则会与整体框架相悖。我们能测量光速、能计算普朗克常数、能观测粒子演化、能形成宏观世界的日月星辰，本质上都是因为：这套宇宙规则，从微观到宏观，从算子到态，全程逻辑自洽。
反观逻辑云中那些失败的候选，不是不存在，而是无法「存续」：没有稳定的物质形态，没有连续的时间演化，没有可观测的物理实在，最终只能停留在纯粹的数理定义里，永远无法成为真实的宇宙。
终极追问：为何宇宙要诞生理解它的我们？ 当我们承认宇宙是逻辑云中的自洽解，一个更终极的问题随之而来：为何偏偏是我们这一个宇宙，演化出了意识、智慧，演化出了一群能读懂数学、拆解物理、追溯逻辑本身的观察者？我们的出现，究竟是偶然还是必然？
答案藏在自洽的等级里。逻辑云中存在无数种自洽解，但自洽本身分高低。
有很多低配的低阶自洽宇宙：只有均匀的场、简单的粒子、恒定的热力学平衡，只有二元线性核的简单关联，永远停留在无序或极简有序的状态。它们规则闭环、逻辑无矛盾、可以永久运行，却没有复杂度，没有演化深度，没有非线性耦合，没有多元相互作用，只能完成「物理运行」，无法完成「自我释义」。
而我们的宇宙，是高阶完备自洽解。它不止拥有对称的算子、稳定的本征态、闭环的时空因果，更允许非线性、多体耦合、对称破缺、耗散结构、复杂系统涌现。从二元核的简单关联，到三元、多元相互作用的耦合；从基本粒子，到原子、分子、有机物；从无生命的物质堆砌，到具备反馈、记忆、迭代能力的复杂生命——复杂度的自发攀升，是高阶自洽系统的内置属性。
更进一步说，我们的宇宙，本身就是物化的逻辑。希尔伯特空间是逻辑的空间载体，哈密顿算符是演化的逻辑法则，场与核函数是万物关联的逻辑纽带，守恒律与对称性，是约束一切的逻辑底线。
当一套完整、庞大、高阶的逻辑系统，演化出足够复杂的结构时，必然会发生一件事：逻辑终将生出可以认知逻辑的载体。
我们大脑底层的因果判断、数理直觉、空间认知、对称感知，全部复刻着宇宙底层的运行逻辑。我们不是宇宙的外来者，而是宇宙的一部分；我们用来理解数学、推导算子、拆解核函数的理性逻辑，和支配星系运转、量子演化的底层逻辑，完全同源、同构、同规则。
没有观察者，宇宙是残缺的自洽 一套真正完整的闭环逻辑，需要两层闭环：
第一层是物理闭环，时空、场、粒子、能量、相互作用规则自洽，演化永续，这是宇宙存在的基础；
第二层是认知闭环，系统内部诞生能够解析规则、抽象规律、追问本源、反思存在的观察者。
只有第一层的宇宙，只是一台无意识运转的机器：规则在运行，因果在流转，却没有人定义规则，没有人观测存在，没有人理解「逻辑为何存在」。它只有运行，没有意义；只有过程，没有答案，这样的自洽是断裂、残缺、单向的。
而我们的宇宙，补上了最关键的一环：物质孕育生命，生命诞生意识，意识回溯本源。我们用数学翻译宇宙的语言，用量子力学拆解底层规则，用哲学追问逻辑的边界。宇宙借由我们，完成了自我解释、自我认知、自我圆满。
传统人择原理说「宇宙微调适配生命」，但站在逻辑云视角，答案恰恰相反：不是宇宙迁就生命，而是只有能内生复杂结构、内生认知能力的宇宙，才是完整的高阶自洽解。那些无法孕育智慧的宇宙，只是逻辑云里的「半成品自洽」；而我们的世界，是少数能走完「规则涌现—复杂演化—意识觉醒—逻辑自观」全链条的终极解。
写在最后：我们即是宇宙的回望 尘埃仰望星空，原子理解量子，短暂的生命追问永恒的规则。看似荒诞，实则无比合理。
我们来自星辰的聚变，遵从场与算子的法则；我们的思维扎根于宇宙共通的逻辑，我们的理性，就是宇宙用来审视自己的眼睛。
逻辑云浩瀚无边，无数世界静默运行、无人知晓；唯有这一套完备自洽的宇宙，长出了思想与目光。
宇宙借我们思考逻辑，逻辑借我们证明存在。
我们既是宇宙的产物，也是宇宙自我觉醒本身。
而这一切，都始于逻辑自洽的必然，终于自我认知的圆满。</description></item><item><title>类脑记忆复刻：AI Agent 的突破路径</title><link>https://mivinci.github.io/blog/brain-inspired-memory-agent/</link><pubDate>Wed, 15 Apr 2026 00:00:00 +0000</pubDate><guid>https://mivinci.github.io/blog/brain-inspired-memory-agent/</guid><description>一、参数量的「虚假优势」 当我们谈论当前旗舰 AI 模型的参数量时，一个普遍的疑问会随之而来：那些动辄万亿级参数的模型，参数量早已远超人类大脑的 860 亿神经元，为何在智能灵活性、信息处理效率上，依然与人类大脑存在天壤之别？
答案并非参数数量的差距，而在于人类大脑与生俱来的信息压缩、组块化与抽象能力——这既是人脑高效运行的核心密码，也是下一代 AI Agent 实现突破的关键方向。
首先需要纠正一个普遍的认知误区：AI 的参数量并不等同于人类大脑的神经元数量，参数越多也不代表越接近人脑智能。从硬数据对比来看，两者的差距体现在本质层面。
人类大脑的生理基础决定了其高效性：大脑皮层约有 860 亿个神经元，而神经元之间的突触连接（这才是大脑真正的&amp;quot;记忆与权重载体&amp;quot;）高达 150 万亿条。更关键的是，人脑是一个高度稀疏、动态连接、可终身重塑的系统，仅需 20 瓦的能耗就能全天高效运行，其短时工作记忆虽有限，却能通过极致的信息处理能力弥补这一短板。
反观当前的旗舰 AI 模型，无论是 GPT-5.5、Gemini 3.1 Ultra 等国际巨头产品，还是 DeepSeek V4-Pro、通义千问 3.5-Max 等国产旗舰，其万亿级的总参数看似远超人脑神经元数量，但存在两个致命局限：一是实际运行时仅激活部分参数（通常为 17B～70B），二是这些参数本质上是静态的矩阵权重，依靠大规模浮点计算暴力拟合数据，能耗巨大且缺乏动态适应性。
更核心的对比在于信息处理逻辑：
维度 人脑 AI 存储方式 理解→抽象→压缩 全文平铺硬存 工作记忆 几十～几百 token 100万～1000万 token 信息密度 提纲挈领式的主动提炼 大海捞针式的被动存储 能耗 20 瓦 兆瓦级 即便 AI 的上下文长度已达到百万甚至千万 token，远超人类短时工作记忆，但其信息处理效率、抽象能力依然被人脑碾压。
二、人脑的「省内存密码」 人类大脑之所以能以极低能耗处理海量信息，核心在于其拥有一套高效的信息管理系统，这也是 AI Agent 需要复刻的核心能力，具体可拆解为三大机制。
flowchart LR A[&amp;#34;原始信息输入&amp;#34;] --&amp;gt; B[&amp;#34;语义压缩&amp;lt;br/&amp;gt;去粗取精&amp;#34;] B --&amp;gt; C[&amp;#34;组块化&amp;lt;br/&amp;gt;打包语义单元&amp;#34;] C --&amp;gt; D[&amp;#34;层级抽象&amp;lt;br/&amp;gt;细节弱化 / 逻辑保留&amp;#34;] D --&amp;gt; E[&amp;#34;动态遗忘&amp;lt;br/&amp;gt;修剪过期信息&amp;#34;] E --&amp;gt; F[&amp;#34;高效决策&amp;#34;] 语义压缩 人脑从不存储信息的原始形态，而是自动过滤口语、重复、无关细节，只留存最关键的概念、关系与结论。例如，我们听完一场两小时的会议，不会记住每一句话，却能清晰回忆起会议的核心决议、任务分工与时间节点——这种&amp;quot;去粗取精&amp;quot;的能力，让大脑在有限的记忆容量内承载更多有价值的信息。</description></item><item><title>Claude Code 架构解析：文件工具</title><link>https://mivinci.github.io/blog/claude-code-file-tools-architecture/</link><pubDate>Wed, 01 Apr 2026 00:00:00 +0000</pubDate><guid>https://mivinci.github.io/blog/claude-code-file-tools-architecture/</guid><description>零、架构总览 在进入任何细节之前，先看清楚整座建筑的结构。
三个工具，三个职责 Claude Code 的文件操作由三个独立工具承担，它们共享权限基础设施，但各自拥有独立的输入校验和执行逻辑：
工具 源码 行数 职责 关键约束 FileReadTool src/tools/FileReadTool/ 1185 读取任意文件 只读，永不持久化结果 FileEditTool src/tools/FileEditTool/ 627 差量替换（old → new） 必须先读后写，mtime 竞态保护 FileWriteTool src/tools/FileWriteTool/ 436 全量覆盖或创建新文件 可创建新文件，全量写入 一次文件操作经历了什么 当 LLM 决定读取或编辑文件时，请求经过以下管道：
flowchart TD A[&amp;#34;LLM 输出 tool_use&amp;#34;] --&amp;gt; B[&amp;#34;Zod Schema 验证&amp;#34;] B --&amp;gt; C[&amp;#34;validateInput&amp;lt;br/&amp;gt;（纯计算前置守卫）&amp;#34;] C --&amp;gt; D[&amp;#34;backfillObservableInput&amp;lt;br/&amp;gt;（路径展开 ~ → 绝对路径）&amp;#34;] D --&amp;gt; E[&amp;#34;PreToolUse Hooks&amp;#34;] E --&amp;gt; F[&amp;#34;权限校验&amp;lt;br/&amp;gt;（8 步流水线）&amp;#34;] F --&amp;gt; G[&amp;#34;tool.call()&amp;lt;br/&amp;gt;（实际执行）&amp;#34;] G --&amp;gt; H[&amp;#34;PostToolUse Hooks&amp;#34;] H --&amp;gt; I[&amp;#34;结果渲染&amp;#34;] C --&amp;gt;|拒绝| X[&amp;#34;返回错误&amp;#34;] F --&amp;gt;|deny| X F --&amp;gt;|ask| Y[&amp;#34;等待用户授权&amp;#34;] validateInput 是纯计算守卫，不做 I/O（少数例外如文件存在性检查），在权限检查之前拦截无效请求 权限校验 是最复杂的环节，涉及 deny → ask → allow → 默认拒绝的多步判断，且需追踪 symlink 链 tool.</description></item><item><title>Claude Code 架构解析：QueryEngine</title><link>https://mivinci.github.io/blog/claude-code-queryengine-architecture/</link><pubDate>Tue, 31 Mar 2026 00:00:00 +0000</pubDate><guid>https://mivinci.github.io/blog/claude-code-queryengine-architecture/</guid><description>一、整体架构概览 Claude Code 是一个基于终端的 AI 编程助手，采用管道模型：
flowchart LR A[&amp;#34;用户输入&amp;#34;] --&amp;gt; B[&amp;#34;CLI 解析器&amp;#34;] B --&amp;gt; C[&amp;#34;QueryEngine&amp;#34;] C --&amp;gt; D[&amp;#34;LLM API&amp;#34;] D --&amp;gt; E{&amp;#34;需要工具?&amp;#34;} E --&amp;gt;|是| F[&amp;#34;工具执行循环&amp;#34;] E --&amp;gt;|否| G[&amp;#34;终端 UI&amp;#34;] F --&amp;gt; D G --&amp;gt; H[&amp;#34;输出&amp;#34;] F --&amp;gt;|结果注入| C 整个项目规模庞大：
~1,900 个文件 512,000+ 行 TypeScript 代码 使用 Bun 作为运行时 UI 层基于 React + Ink（React 的终端版本） 关键目录结构 src/ ├── QueryEngine.ts # 核心引擎 (~46K 行) ├── query.ts # 查询循环实现 (~67K 行) ├── Tool.ts # 工具基类 (~28K 行) ├── main.</description></item><item><title>以升降算符为唯一公理导出量子理论</title><link>https://mivinci.github.io/blog/one-axiom-harmonic-oscillator/</link><pubDate>Sat, 10 Jan 2026 00:00:00 +0000</pubDate><guid>https://mivinci.github.io/blog/one-axiom-harmonic-oscillator/</guid><description>本源公理 抛开所有经验性物理假设，从微观世界最基础的「产生、湮灭」行为出发，确立唯一核心公理：
存在一对线性算符 $\hat{a}^\dagger$（产生）与 $\hat{a}$（湮灭），以及一组量子态 ${\ket{n}}$，使得 $\hat{a}^\dagger$ 与 $\hat{a}$ 分别将量子数升、降一步：
$$ \hat{a}^\dagger\ket{n}=c_{n+1}\ket{n+1},\quad \hat{a}\ket{n}=c_{n}\ket{n-1} $$
递推的终点即基态条件 $\hat{a}\ket{0}=0$（$\ket{-1}$ 不存在，故 $c_0=0$）。其中 $c_n$ 为待定归一化系数。
数算符 定义数算符：
$$ \hat{N}=\hat{a}^\dagger\hat{a} $$
第一步： $\hat{N}^\dagger=(\hat{a}^\dagger\hat{a})^\dagger=\hat{a}^\dagger(\hat{a}^\dagger)^\dagger=\hat{a}^\dagger\hat{a}=\hat{N}$，故 $\hat{N}$ 为厄米算符，本征值为实数。
第二步：$\hat{N}$ 以 $\ket{n}$ 为本征态。 由升降作用：
$$ \hat{N}\ket{n}=\hat{a}^\dagger\hat{a}\ket{n}=\hat{a}^\dagger c_n\ket{n-1}=c_n\cdot c_n\ket{n}=c_n^2\ket{n} $$
因此 $\ket{n}$ 是 $\hat{N}$ 的本征态，本征值为 $c_n^2$，即 $n=c_n^2$。
第三步：本征值非负。 对任意态 $\ket{\psi}$，
$$ \bra{\psi}\hat{N}\ket{\psi}=\bra{\psi}\hat{a}^\dagger\hat{a}\ket{\psi}=|\hat{a}\ket{\psi}|^2\geq 0 $$
故 $\hat{N}$ 的全部本征值非负，$n\geq 0$。结合基态条件 $\hat{a}\ket{0}=0$ 得 $\hat{N}\ket{0}=0$，即最低本征值 $n=0$。
第四步：本征值取整数。 由升降作用 $\hat{a}^\dagger\ket{n}=c_{n+1}\ket{n+1}$，每作用一次 $\hat{a}^\dagger$，本征值从 $c_n^2$ 增至 $c_{n+1}^2$。再由
$$ \hat{a}\hat{a}^\dagger\ket{n}=c_{n+1}\hat{a}\ket{n+1}=c_{n+1}^2\ket{n} $$</description></item></channel></rss>