人工智能通识-科普-逻辑

作者: zhyuzh3d | 来源:发表于2019-02-20 22:51 被阅读16次

欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】


量化Quantify

量化,用量词来进行修饰限制对象。
逻辑学最常用的是全部∀(倒写的A,即All),存在∃(反写的E,即Exists)。

量化,可以解决一些无限但重复的问题,比如:
1×2=1+1,2×2=2+2,3×2=3+3,4×2=4+4,...100×2=100+100...
可以简化表示为
`对全部n来说n×2=n+n或者表示为\forall n(n×2\Leftrightarrow n+n)

对于以下命题:
小明的朋友都喜欢唱歌或跳舞
以小x代表小明的一个朋友,以大X代表小明的所有朋友,以P表示跳舞,P(x)表示朋友x喜欢跳舞,同样Q(x)表示朋友x喜欢唱歌。那么上面的命题可以表述为:

\forall x\in X,P(x)\vee Q(x)

就是说对于集合X中的任意一个朋友,P(x)Q(x)至少有一个为真。其中\vee表示析取,即只要P(x)Q(x)有一个成立即可。

命题逻辑Propositional Logic

有时也叫零阶逻辑Zeroth-order logic,命题中不包含量词或变量,但可以有条件和推理。

比如下面的推理:

前提1:如果下雨,就是阴天。
前提2:下雨了。
结论:是阴天

P表示下雨,Q表示阴天,那么这个可以简写为:
\begin{align} &前提1:P\rightarrow Q\\ &前提2:P\\ &结论: Q\\ \end{align}
\vdash表示推导出,可以进一步简写为:
P\rightarrow QP\vdash Q\\\\

谓词Predicate

谓词可以当做一个返回真假布尔值的函数,比如brothers(tom,mike)表示tom和mike是否为兄弟,结果为是True或否Flase,这里brothers就是谓词函数。

一阶逻辑First-order Logic

一阶逻辑可以包含谓词和量化。
例如,对于苏格拉底是哲学家柏拉图是哲学家这两句,命题逻辑认为它们是没有关系的,但在一阶逻辑中,它们具有a是哲学家这样的相同结构,这是因为在一阶逻辑中可以识别谓词是哲学家这个返回真假的函数。

对于如果a是哲学家,那么a是学者这句,包含了假设,它的谓词是是一个哲学家是一个学者

亚里士多德的经典三段论可以表示成一阶逻辑:

大前提:所有人都会死
小前提:小明是人
结论:小明会死

表示成逻辑符号公式为:
\forall x(y\in X,P(x)\rightarrow P(y))

一阶逻辑最常用的量词就是全称量词\exists存在量词\forall

高阶逻辑HOL,Higher-order Logic

一阶逻辑只能量化对象,不能量化谓词,而高阶逻辑可以对谓词进行量化。

例如任意xy,如果xy相等,那么对于任意性质P,都有P(x)P(y)相等,这句话就无法用一阶逻辑表达,因为对任意性质这一条谓语无法用一阶逻辑进行量化。

上面这句话用高阶逻辑表达的就是:
\forall x,y(x=y\rightarrow \forall P(P(x)\Leftrightarrow P(y))

在编程中经常把函数(或函数指针)当做参数传递的现象,本质也是高阶函数的体现。

更多逻辑符号

\neg表示否定,例如双重否定等于肯定表示为:\neg(\neg A)\Leftrightarrow A

\land表示合取,即必须二者都为真那么合取后才为真,例如对于自然数n有n<4\land n>2\Leftrightarrow n=3

\oplus表示异或,即两者有且只有一者为真时异或后才为真,比如\neg A \oplus A永远为假。


欢迎关注我的专栏( つ•̀ω•́)つ【人工智能通识】


每个人的智能新时代

如果您发现文章错误,请不吝留言指正;
如果您觉得有用,请点喜欢;
如果您觉得很有用,欢迎转载~


END

相关文章

网友评论

    本文标题:人工智能通识-科普-逻辑

    本文链接:https://www.haomeiwen.com/subject/orykyqtx.html