用途:该技能用于处理信息论中的信道容量(channel capacity)问题。
主要能力:涵盖互信息计算(I(X;Y) = H(X) + H(Y) - H(X,Y),以及 I(X;Y) = H(X) - H(X|Y) = H(Y) - H(Y|X),且互信息对称);信道模型描述(输入 X、输出 Y、信道 P(Y|X),信道矩阵行对应输入、列对应输出,元素 (i,j) 表示 P(Y=j|X=i));信道容量定义为 C = max_{p(x)} I(X;Y),即对输入分布求最大化,由容量可达分布取得;常见信道容量公式,包括二进制对称信道(BSC)为 1 - H(p),其中 p 为交叉概率,二进制擦除信道(BEC)为 1 - epsilon,其中 epsilon 为擦除概率,AWGN 信道为 0.5 * log2(1 + SNR);以及用于计算容量的迭代式 Blahut-Arimoto 算法,在优化 p(x) 与 p(y|x) 之间交替并收敛到容量。
使用方式:提供若干工具命令,例如用 scipy 计算互信息:uv run python -c "from scipy.stats import entropy; p = [0.5, 0.5]; q = [0.6, 0.4]; H_X = entropy(p, base=2); H_Y = entropy(q, base=2); print('H(X)=', H_X, 'H(Y)=', H_Y)";用 sympy 化简 BSC 容量表达式:uv run python -m runtime.harness scripts/sympy_compute.py simplify "1 + p*log(p, 2) + (1-p)*log(1-p, 2)";用 z3 证明容量上界:uv run python -m runtime.harness scripts/z3_solve.py prove "I(X;Y) <= H(X)"。完整工具文档见 .claude/skills/math-mode/SKILL.md。
适用场景:适合在信息论学习或研究中计算互信息、推导常见信道容量、验证容量上界,以及运行 Blahut-Arimoto 等求解流程时使用。
限制:资料未提供更完整的参数说明、运行环境要求或结果解释细节,相关事实暂未提供。