【量化】从零到LGBM | 2 | 集成学习

集成学习 在上一篇文章中,我们讨论了决策树的基本原理和它在量化场景下的致命缺陷:过拟合。单棵决策树很容易把市场噪声当成规律,导致回测优秀、实盘失效。一个自然的改进思路是:既然单棵树不可靠,那么能否训练多棵树,让它们共同做决定? 这就是集成学习(Ensemble Learning)的核心思想。 1. 什么是集成学习? 集成学习的思路并不复杂:训练多个基础模型,再按某种方式将它们的预测结果组合起来,从而获得比单个模型更稳定、更准确的输出。这些基础模型通常被称为弱学习器(weak learner),而组合后的整体模型被称为强学习器(strong learner)。 在决策树场景下,集成学习通常表现为训练多棵决策树,然后通过投票或平均的方式得到最终预测。根据训练方式和组合逻辑的不同,集成学习主要分为两大流派:Bagging 和 Boosting。 2. Bagging:并行的民主投票 代表模型:随机森林(Random Forest) Bagging 是 Bootstrap Aggregating 的缩写,它的工作机制可以概括为三步: Bootstrap 采样:从原始训练集中有放回地随机抽取多个样本子集。每个子集的大小通常与原始训练集相同,但由于是有放回抽样,某些样本可能出现多次,某些样本可能一次都不出现。这样,每个子集都略有不同。 独立训练:对每个 Bootstrap 子集分别训练一棵决策树。每棵树在训练时还可以进一步引入随机性:在每个分裂节点,不比较全部特征,而是随机选取一个特征子集来寻找最佳切分。这就是随机森林中“随机”的另一个来源。 投票或平均:所有树并行训练完成后,对于分类问题,最终预测由多数投票决定;对于回归问题,最终预测取所有树输出的平均值。 Bagging 的核心目标是降低方差(variance)。单棵决策树的预测结果容易受到训练数据中微小变化的影响,方差较大。通过训练多棵在不同数据子集和特征子集上得到的树,并将它们的预测结果平均,可以显著降低最终模型对特定数据扰动的敏感程度。形象地说,多个专家独立判断后取平均,个别专家的极端错误会被其他专家中和,这就是群体平均效应在这里的体现。 3. Boosting:串行的错题本式迭代 代表模型:AdaBoost、GBDT、XGBoost、LightGBM Boosting 的思路与 Bagging 完全不同。它不追求并行训练、独立投票,而是让树按顺序逐个生成,每一棵新树都重点纠正前面所有树留下的错误。 具体来说: 串行训练:模型按顺序逐个添加。第一棵树先对原始目标进行拟合。 聚焦残差:第二棵树的目标不再是直接预测原始目标,而是预测“第一棵树预测值与真实值之间的差距”,也就是残差(residual)。第三棵树继续拟合前两棵树之后仍未解释的部分。这个过程可以不断重复。 加权累加:最终预测结果是所有树的输出按一定权重累加。每棵树不再是平等投票,而是根据其对整体损失下降的贡献程度来决定权重。 Boosting 的核心目标是降低偏差(bias)。它允许模型不断修正错误,逐步逼近训练数据中那些复杂、微弱的规律。如果 Bagging 是“多个学生独立作答,最后取平均分”,那么 Boosting 更像是“一个学生反复看错题本,不断弥补自己的短板”。 从数学上看,Boosting 可以理解为一个加法模型: $$F_m(x) = F_{m-1}(x) + \eta \cdot h_m(x)$$ 其中 $F_{m-1}$ 是前 $m-1$ 棵树累加后的模型,$h_m$ 是第 $m$ 棵树,$\eta$ 是学习率。每一棵新树 $h_m$ 的拟合目标不再是原始标签 $y$,而是当前模型的负梯度方向,在平方损失下就是残差 $y - F_{m-1}(x)$。这也是“梯度提升”(Gradient Boosting)名称的由来。 ...

August 20, 2026 · 1 min · 126 words · c.w.

【量化】从零到LGBM | 1 | 决策树

决策树与“查字典”模型。 0. 量化为什么要算法 这里的底层逻辑和LLM是相同的,都是将现实世界的某些东西视作一个多元函数,然后采用某种方式去逼近这个函数。 在量化中,我们可以把过往的市场行情甚至新闻量化为函数的自变量,我们希望函数的输出是未来的行情预测。如果预测的好,那我们就赚钱。但是很明显,数学上不存在一个显式表达式来描述这个函数,我们就需要用一定的计算机算法去拟合这些函数,最简单的拟合就是我们高中学过的最小二乘法,LLM采用Transformer作为核心去拟合人们“说话”这个函数过程,而量化里面较为经典的就是使用LGBM去拟合“市场”这个函数过程。这就是量化算法的本质。 1. 什么是决策树 想象一下,你现在是基金经理,要在 A 股 5000 多只股票中,挑出一只明天大概率上涨的股票。你的大脑里可能会浮现出一套层层递进的筛选规则: 第一层判断:它是沪深300成分股吗? 否 -> 淘汰(风险太大) 是 -> 进入下一层 第二层判断:过去 5 天成交量是否明显放大? 否 -> 淘汰(没有资金关注) 是 -> 进入下一层 第三层判断:当前市盈率(PE)是否小于 30? 是 -> 买入信号 否 -> 观望信号 你刚刚在脑海里构建了一棵决策树(Decision Tree)。 它也很像“查字典”。查字典时,我们不是从第一页逐页翻,而是先看首字母,再逐步缩小范围,最后定位到一个词条。决策树也是这样:通过一系列“是/否”或“大于/小于”的判断,把复杂的数据一步步划分到不同的“叶子节点”上,最终给出一个预测结果,比如“涨”“跌”或某个收益率。 在计算机科学中,可以把它理解为一个多层嵌套的 if-else 规则系统。更严格地说,决策树是一个树形结构:每个内部节点对某个特征做一次判断,每条分支对应一个判断结果,最终的叶子节点给出预测值。 2. 机器是怎么“学会”这棵树的?(核心原理) 人类可以凭经验“拍脑袋”定规则,那机器是怎么自动长出一棵树的呢? 机器学习的核心思想是:优先寻找那个“最能区分好坏”的问题,优先提问。 在数学上,这通常通过最大化**信息增益(Information Gain)或最小化基尼不纯度(Gini Impurity)**来实现。两者的直觉一致:都希望切分后的数据子集变得更“纯”,也就是同一组里的结果尽可能一致。 举个例子: 假设机器手里有 1000 只股票的历史数据,其中 500 只第二天上涨,500 只下跌。整体上是一团乱麻,纯度很低。 机器会尝试用各种因子去切分这 1000 只股票。 如果用“股票代码尾数是奇数还是偶数”来切分,发现切完后两边仍然涨跌各半。这说明这个特征几乎没有区分能力,信息增益接近 0。 如果用“过去 20 天是否连续上涨”来切分,发现:在“连续上涨”的股票中,80% 第二天出现回调;“未连续上涨”的股票中,涨跌大致各半。 因此,对机器来说,“过去 20 天是否连续上涨”这个特征能把数据切分得更“纯”:一边大概率下跌,另一边不确定。所以,算法会优先选择这个特征作为树的根节点。 实际训练时,算法会在每个节点遍历所有候选特征和可能的切分点,计算每一次切分带来的“纯度提升”,然后选择提升最大的那一个。这个过程不断重复,直到满足停止条件,比如达到最大深度、节点里的样本数量太少,或者继续切分不再带来明显提升。 如果不加任何限制,决策树会一直分裂下去。这正是下一节要说的核心问题。 ...

August 20, 2026 · 1 min · 106 words · c.w.

大一下学期微积分笔记

上半学期:多元函数微分学 1. 二重极限与累次极限 二重极限:$\displaystyle \lim_{(x,y)\to(x_0,y_0)} f(x,y)$ 累次极限:$\displaystyle \lim_{x\to x_0}\lim_{y\to y_0} f(x,y)$ 2. 无穷小的阶 设$\rho = | \boldsymbol{x} - \boldsymbol{x_0} |$为两点间的距离(二元函数中即$\sqrt{(x-x_0)^2+(y-y_0)^2}$),若$f(\boldsymbol{x}) = O(\rho^k)$,则称$f$是$k$阶无穷小。 3. 多元函数微分与偏导数 对$n$元函数$u = f(x_1,x_2,\dots,x_n)$,全微分公式: $$du = \frac{\partial u}{\partial x_1} dx_1 + \frac{\partial u}{\partial x_2} dx_2 + \dots + \frac{\partial u}{\partial x_n} dx_n$$ 4. 方向导数 设$\vec{l} = (\cos\alpha_1, \cos\alpha_2, \dots, \cos\alpha_n)$为单位方向向量($\alpha_i$是$\vec{l}$与第$i$个坐标轴的夹角),则$f(x_1,\dots,x_n)$在$\boldsymbol{x_0}$处沿$\vec{l}$的方向导数为: $$\frac{\partial f}{\partial \vec{l}}(\boldsymbol{x_0}) = \frac{\partial f}{\partial x_1}(\boldsymbol{x_0})\cos\alpha_1 + \frac{\partial f}{\partial x_2}(\boldsymbol{x_0})\cos\alpha_2 + \dots + \frac{\partial f}{\partial x_n}(\boldsymbol{x_0})\cos\alpha_n$$ ...

June 3, 2026 · 8 min · 1628 words · c.w.

大一下学期微积分笔记

1. 各种分解 1.1 LU 与 LDU 分解 定义:某矩阵 $A=LU$,则 $U$ 是对 $A$ 作行简化后得到的上三角矩阵。 例子: $$ A = \begin{pmatrix} 1 & 2 & 3 \\ 4 & 4 & 6 \\ 2 & 2 & 6 \end{pmatrix} \sim \begin{pmatrix} 1 & 2 & 3 \\ 0 & -4 & -6 \\ 0 & -2 & 0 \end{pmatrix} \sim \begin{pmatrix} 1 & 2 & 3 \\ 0 & -4 & -6 \\ 0 & 0 & 3 \end{pmatrix} \leftarrow \text{这个是 } U $$ ...

June 3, 2026 · 6 min · 1106 words · c.w.

离散数学(1) | 8 | 谓词逻辑的推理

本文及其系列文章用于离散数学(1)科目的期末考试复习 基本的推理公式 $(\forall x)P(x)\lor(\forall x)Q(x)\Rightarrow(\forall x)(P(x)\lor Q(x))$⭐️ $(\exists x)(P(x)\land Q(x))\Rightarrow (\exists x)P(x)\land (\exists x)Q(x)$⭐️ $(\forall x)(P(x)\rightarrow Q(x))\Rightarrow (\forall x)P(x)\rightarrow (\forall x)Q(x)$ $(\forall x)(P(x)\rightarrow Q(x))\Rightarrow (\exists x)P(x)\rightarrow (\exists x)Q(x)$ $(\forall x)(P(x)\leftrightarrow Q(x))\Rightarrow (\forall x)P(x)\leftrightarrow (\forall x)Q(x)$ $(\forall x)(P(x)\leftrightarrow Q(x))\Rightarrow (\exists x)P(x)\leftrightarrow (\exists x)Q(x)$ $(\forall x)(P(x)\rightarrow Q(x))\land (\forall x)(Q(x)\rightarrow R(x))\Rightarrow (\forall x)(P(x)\rightarrow R(x))$⭐ $(\forall x)(P(x)\rightarrow Q(x))\land P(a)\Rightarrow Q(a)$⭐ $(\forall x)(\forall y)P(x,y)\Rightarrow (\exists x)(\forall y)P(x,y)$ $(\exists x)(\forall y)P(x,y)\Rightarrow (\forall y)(\exists x)P(x,y)$ 这些推理公式的逆一般是不成立的,所以记住和理解顺序很重要。 推理演算 注意,本节按照老师上课讲义的符号和规则来描述,不同的规定和不同的讲述方式可能导致本节内容在一定程度上不是普适性的。本节适配内容为T大软件学院离散数学(1)的课程及考试内容。 ...

January 6, 2026 · 2 min · 282 words · c.w.

离散数学(1) | 7 | 谓词逻辑的等值和范式

本文及其系列文章用于离散数学(1)科目的期末考试复习 由命题公式得来的等值公式 这部分我们把谓词逻辑看做命题逻辑中的命题变元,命题逻辑中正确的公式也是谓词逻辑中正确的公式。 例如,命题逻辑中,$\neg\neg p=p$是重言式,那么对于谓词逻辑$\neg\neg (\forall x)P(x)=(\forall x)P(x)$是一个有效式。 这部分是谓词逻辑的一个重要基石,因为谓词逻辑中很多细节性的、不涉及量词变换的等值公式都是由此得来的。 否定型等值式⭐⭐ 这部分是最最重要的基础。 $\neg(\forall x)P(x)=(\exists x)\neg P(x)$ $\neg(\exists x)P(x)=(\forall x)\neg P(x)$ 可以这样直观的理解和解释: 并不是对于所有的$x,P(x)$都成立,那么肯定存在一个$x,P(x)$不成立,即$\neg P(x)$成立。 不存在一个$x$让$P(x)$成立,那么对于所有的$x,P(x)$都不成立,即$\neg P(x)$成立。 谓词公式和命题变项的分配律 有关$\land$和$\lor$的分配律⭐ $(\forall x)(P(x)\land q)=(\forall x)P(x)\land q$ $(\forall x)(P(x)\lor q)=(\forall x)P(x)\lor q$ $(\exists x)(P(x)\land q)=(\exists x)P(x)\land q$ $(\exists x)(P(x)\lor q)=(\exists x)P(x)\lor q$ 这部分是比较好理解的,也是非常基础性的定律。 有关$\rightarrow$的分配律 $(\forall x)(P(x)\rightarrow q)=(\exists x)P(x)\rightarrow q$ $(\exists x)(P(x)\rightarrow q)=(\forall x)P(x)\rightarrow q$ $(\forall x)(q\rightarrow P(x))=q \rightarrow (\forall x)P(x)$ $(\exists x)(q\rightarrow P(x))=q \rightarrow (\exists x)P(x)$ ...

January 6, 2026 · 2 min · 251 words · c.w.

离散数学(1) | 6 | 谓词逻辑的基本概念

本文及其系列文章用于离散数学(1)科目的期末考试复习 一些定义和名称 个体词就是命题逻辑里面的主词。包括了个体常项和个体变项。将个体变化的范围成为个体域或者论域$D$。 谓词指的是用来刻画对象性质和关系的符号,一般用大写字母$P,Q,R$表示,可以理解为语法上的谓语的作用。把在谓词的定义中涉及到的个体词的个数称为该谓词的元数。如$P(x,y)$表示$x=y$就是一个二元谓词;命题逻辑中的命题就是一个零元谓词。注意,谓词的值域是$\{T,F\}$ 函数指的是一些从$D$到$D$的映射。他们与谓词的区别在于值域。例如,$f(x)$表示“$x$的父亲”是一个函数,而$P(x)$表示“$x$是父亲”就是一个谓词。 项是用于表示论语中对象的符号表达式。个体词和函数都是项。 量词是对个体数量加以约束和限制的词。量词分为全称量词和存在量词。全称量词就是$\forall$,存在量词就是$\exists$,具体内涵就是我们高中就熟知的。量词的辖域指的就是某个量词所约束的范围。一般而言,我们可以认为如果量词后不加括号,那辖域就是后一个谓词符号;如果量词后有括号,那就是括号里的内容。 一些实例 在这里给出一些自然语言形式化变成一阶谓词逻辑的结果,便于理解。注意,这些结果中有些是特别需要注意的。 所有的有理数都是实数 取$P(x)$表示$x$是有理数,$R(x)$表示$x$是实数。则原句可以形式化为$(\forall x)(P(x)\rightarrow R(x))$ 注意,“所有的……都是……”这样类型的语句只能用$\rightarrow$ 有的实数是有理数 取$P(x)$表示$x$是有理数,$R(x)$表示$x$是实数。则原句可以形式化为$(\exists x)(R(x)\land P(x))$ 注意,“有的……是……”这样类型的语句一般用$\land$ 有的实数不是有理数 取$P(x)$表示$x$是有理数,$R(x)$表示$x$是实数。则原句可以形式化为$(\exists x)(R(x)\land \neg P(x))$ 没有无理数是有理数 取$P(x)$表示$x$是有理数,$Q(x)$表示$x$是无理数数。则原句可以形式化为$\neg(\exists x)(Q(x)\land P(x))$ 至少有一个偶数是素数 取$A(x)$表示$x$为偶数,$B(x)$表示$x$为素数。则原句可以形式化为$(\exists x)(A(x)\land B(x))$ 至少有一个偶数并且至少有一个素数 取$A(x)$表示$x$为偶数,$B(x)$表示$x$为素数。则原句可以形式化为$(\exists x)A(x)\land(\exists x) B(x)$ 函数$f(x)$在$[a,b]$上的点$x_0$处连续 根据微积分的知识,可以形式化为$(\forall \epsilon)(\epsilon >0\rightarrow (\exists \delta)(\delta>0\land (\forall x)(|x-x_0|<\delta\rightarrow|f(x)-f(x_0)|<\epsilon)))$ 自然数集合的形式描述 即,论域是自然数集,我们要形式化下列语句(自然数集合建立公理):$\\(1)$对于每个数,有且仅有一个相继后元$\\(2)$没有一个数的相继后元是0 $\\(3)$ 对于除0以外的数,有且仅有一个相继前元。 设谓词$P(x,y)$表示$x=y$,函数$f(x)=x+1$,函数$g(x)=x-1$。则原句可以形式化为:$\\(1)(\forall x)(\exists y)(P(y,f(x))\land(\forall z)(P(z,f(x))\rightarrow P(y,z)) )\\(2)\neg(\exists x)P(0,f(x))\\(3)(\forall x)(\neg P(0,x)\rightarrow (\exists y)(P(y,g(x))\land(\forall z)(P(z,g(x))\rightarrow P(y,z))))$ ...

January 6, 2026 · 1 min · 111 words · c.w.

离散数学(1) | 5 | 罗素公理系统

本文及其系列文章用于离散数学(1)科目的期末考试复习 一般公理系统的结构 通常而言,一个公理系统一般包括如下几部分: 初始符号:公理所允许出现的全体符号的集合。 形成规则:由出事符号可以组成各种符号序列。 公理:选出几个最基本的重言式作为推演其他所有重言式的依据。 变形规则:变形规则就是公理系统所规定的推理规则。 建立定理:这是公理系统内做演算的主要内容,应该包括所有的重言式和对它们的证明。 罗素系统 初始符号 $A,B,C……$,大写英文字母(表示命题) $\neg , \lor$表示联结词 ( ),表示圆括号 $\vdash$,写在一个公式之前表示其为重言式 形成规则 符号形成规则的符号序列成为合式公式。 符号$\pi$是合式公式($\pi$取值为$A,B……$) 如果$A,B$是合式公式,那么$A\lor B$也是合式公式 如果$A$是合式公式,那么$\neg A$也是合式公式 只有符合1,2,3的符号序列才是合适公式 定义 除了由形成规则构成的合式公式之外,还可以通过定义来引入新的合式公式,这样引入的合式公式有着缩写和简化表达的作用。 定义1 $A\rightarrow B$定义为$\neg A\lor B$ 定义2 $A\land B$定义为$\neg(\neg A\lor\neg B)$ 定义3 $A\leftrightarrow B$定义为$(A\rightarrow B)\land(B\rightarrow A)$ 或者换句话说,罗素公理系统中只有“非”和“或”两种逻辑,其余逻辑都要求用“非”和“或”来表示。并且注意,上述定义中的顺序关系是严格的。 公理⭐️ 公理1 $\vdash (P\lor P)\rightarrow P$ 公理2 $\vdash P\rightarrow (P\lor Q)$ 公理3 $\vdash (P\lor Q)\rightarrow (Q\lor P)$ 公理4 $\vdash (Q\rightarrow R)\rightarrow((P\lor Q)\rightarrow (P\lor R))$ 注意,只有这些公理才能够直接运用在罗素公理系统的推导过程中!我们其余所知道的所有公式定理都不能够直接在罗素公理系统中用,包括交换律、结合律、互反律、摩根律等等等等。 变形规则⭐️ 代入规则:将合式公式$A$中出现的某一个符号$\pi$到处都带一某一个合适的公式$B$,从而得到合式公式$A\frac{\pi}{B}$叫代入。带入规则说,如果$\vdash A$,则$\vdash A\frac{\pi}{B}$ ...

January 5, 2026 · 2 min · 365 words · c.w.

离散数学(1) | 4 | 命题逻辑的推理

本文及其系列文章用于离散数学(1)科目的期末考试复习 推理形式 我们将用自然语句描述的推理关系引入符号,抽象化并以条件式表现出来,就得到了一种推理形式。 比如: 如果$P$,则$Q$。非$Q$,所以非$P$ 形式化之后就得到了 : $((P\rightarrow Q)\land\neg Q)\rightarrow \neg P$ 当然,也有一些推理形式是错误的,比如$((P\rightarrow Q)\land\neg P)\rightarrow \neg Q$。这种推理形式我们不太关心。我们关心的是那些前提真则结论必真的推理形式,我们叫它正确的推理形式。 即,给定两个命题公式$A,B$,如果$A$取值为真,那么$B$取值也必为真,那么说$A\rightarrow B$就是一个正确的推理形式。这时候,我们称$A$重言蕴含$B$,或者称$B$为$A$的逻辑推论,并用符号$A\Rightarrow B$表示。 $\Rightarrow$可以理解为我们之前在初高中常见的“推导出”的符号。 基本的推理公式 常用公式 $P\land(P\rightarrow Q)\Rightarrow Q$⭐️⭐️ 假言推理,或者说叫分离规则,最常用的公式 $(P\rightarrow Q)\land(Q\rightarrow R) \Rightarrow P\rightarrow R$⭐️⭐️ 三段论 $P\land Q\Rightarrow P$⭐️ 最基础的公式,常用于分离合取的不同公式 $P\Rightarrow P\lor Q$⭐️ 常用于增加条件,方便三段论规范性 其余常见公式 这里的公式都可以由常用公式推导出。 $\neg(P\rightarrow Q)\Rightarrow P$ $\neg(P\rightarrow Q)\Rightarrow \neg Q$ $\neg P\Rightarrow P\rightarrow Q$ $Q\Rightarrow P\rightarrow Q$ $\neg P\land(P \lor Q)\Rightarrow Q$ $\neg Q\land(P\rightarrow Q)\Rightarrow\neg P$ ...

January 3, 2026 · 2 min · 215 words · c.w.

离散数学(1) | 3 | 联结词、对偶式和范式

本文及其系列文章用于离散数学(1)科目的期末考试复习 命题公式的真值表 对于一个含有$n$个命题变元$P_1,P_2,……,P_n$的命题公式$A$来说,可以根据$P_1,P_2,……,P_n$的真值给出$A$的真值,从而建立起了一个命题公式的真值表。 一般我们认为,从真值表出发写命题公式可以从列表中值为$T$或者值为$F$来写。 比如,如果真值表为 $$\begin{array}{|cc|c|}P&Q&{A}\\0&0&0\\0&1&1\\1&0&0\\1&1&1\end{array}$$ 那么,从取到$T$的那几行来看,$A=(\neg P\land Q)\lor(P\land Q)$。即,A在取$T$的时候,$P,Q$的取值应该让$A$的表达式中某个括号的真值为1。 从取到$F$的那几行来看,$A=(\neg P \lor\neg Q)\land(P\lor\neg Q)$。即,A在取到$F$的时候,$P,Q$的取值应该让$A$的表达式中某个括号的真值为0。 联结词的完备集 除了常见的5个联结词外,我们还可以定义更多的联结词。以下是三个较为常见的联结词。 异或$\overline\lor$ $$\begin{array}{|cc|c|}P&Q&{P\overline\lor Q}\\0&0&0\\0&1&1\\1&0&1\\1&1&0\end{array}$$ 与非$\uparrow$ $$\begin{array}{|cc|c|}P&Q&{P\uparrow Q}\\0&0&1\\0&1&1\\1&0&1\\1&1&0\end{array}$$ 或非$\downarrow$ $$\begin{array}{|cc|c|}P&Q&{P\downarrow Q}\\0&0&1\\0&1&0\\1&0&0\\1&1&0\end{array}$$ 理论上,其他的联结词都是存在的,但是因为使用甚少,所以常常不予讨论。 还有一个问题是,对于$n$个命题变项而言,我们可以定义出多少个联结词。容易知道,答案是$2^{2^n}$个。这由归纳法或者直接构造即可得证。 对偶式和补公式 将$A$中所有出现的$\land,\lor,T,F$分别以$\lor,\land,F,T$替换,得到公式$A^$,则称,$A^$是$A$的对偶式。或者说,$A$和$A^*$互为对偶式。 设$A=A(P_1,P_2,……,P_n)$,令$A^-=A(\neg P_1,\neg P_2,……,\neg P_n)$,则称$A^-$为A的补公式 那么,我们由如下定理: $\neg(A^* )=(\neg A)^* ,\neg(A^-)=(\neg A)^-$ $(A^* )^* =A=(A^-)^-$ $\neg A=(A^* )^-$ 其中,性质2.非常显然,性质1.和3.可以通过对式子中联结词个数进行归纳来证明。实际上,3.是摩根律的推广形式。 以下是对偶式、补公式有关真值性的的一些性质。 如果$A=B$,那么$A^* =B^*$ 如果$A\rightarrow B$永真,那么$B^* \rightarrow A^*$永真 若$A$永真,那么$A^-$永真。反之亦然 若$\neg A$永真,那么$A^*$永真。反之亦然。 范式 一些定义 为了描述方便,先定义几个术语。 简单命题$P$和$\neg P$被称为文字 一些文字的合取被称为合取式 一些文字的析取被称为析取式 ...

January 2, 2026 · 1 min · 166 words · c.w.