谓词逻辑

命题逻辑在是具有局限性的。
命题逻辑在处理语句成分中有诸如“否”、“并”、“或”和“如果···那么···”时, 取得了令人满意的结果, 但人类语言比这丰富得多, 我们如何处理如“存在···”, “所有···”,“在···中”,和“只有···”呢?
命题逻辑有其明显的局限性, 我们需要更精确微妙的 谓词逻辑(predicate logic) 来表达判断语句, 谓词逻辑也称为一阶逻辑(first-order logic)


补充:

  • 一阶谓词逻辑:谓词表示性质;
  • 二阶谓词逻辑:谓词表示关系;

语言的项由变量、常值符号以及作用其上的函数构成。函数可以嵌套,如m(m(x))m(m(x))m(m(x))。
(此部分参考 《软件形式化基础》教材)

语法分析树

谓词逻辑公式可以用语法分析树表示。

  • ¬\neg¬、 ∀y\forall y∀y和∃y\exists y∃y绑定优先级最高;
  • 其次为 ∧\land∧ 和 ∨\lor∨;
  • 然后是→\to→,它是右结合的。

只要不致引起歧义,我们经常省去关于量词的括号。

谓词逻辑公式可以用语法分析树表示。例如,下图的分析树表示公式∀((P(x)→Q(x))∧S(x,y))\forall((P(x)\to Q(x))\land S(x, y))∀((P(x)→Q(x))∧S(x,y))。

自由变元和约束变元

变量和量词的引入使我们可以表达“所有”和“某些”的含义。
直观地说,为证明∀xQ(x)\forall x Q(x)∀xQ(x) 为真,相当于将x用任何可能的取值来代替,检测Q对每一个这样的代入均成立。
公式为 “真”包含两层重要的、但不同的意义。
首先,如果对涉及的所有谓词和函数符号赋以具体含义,则我们有一个模型,并可以检测在这个特定模型中公式是否为真。
例如,若一个公式 是一个硬件线路要求的行为编码,那么,我们要知道是否它对线路模型是真的。其次,有时人们需要保证某个公式对所有模型都为真。
考虑关于常量c的公式P(c)∧∀y(P(y)→Q(y))→Q(c)P(c)\land \forall y(P(y)\to Q(y))\to Q(c)P(c)∧∀y(P(y)→Q(y))→Q(c)。显然,无论考虑什么样的模型,这个公式都应该是真的。公式为真的第二层含义是2.3节讨论的内容。
遗憾的是,如果要在一个特定模型中形式地定义公式为真,则更为复杂。在理想情况下,我们寻求一个定义,可以用来编写验证公式在特定模型中是否成立的计算机程序。首先,我们需要理解以不同方式出现的变量。考虑前面已画出语法分析树的公式:∀x((P(x)→Q(x))∧S(x,y))\forall x((P(x) \to Q(x)) \land S(x, y))∀x((P(x)→Q(x))∧S(x,y))

可以发现变量出现在两种不同的位置:

  • 第一,在像∀x\forall x∀x和∃z\exist z∃z的结点中,总出现在量词∀\forall∀和∃\exist∃后面;这样的结点总是只有一棵子树,它包含了对应量词的作用范围
  • 变量出现的另一种方式是包含变量的叶结点。若变量是叶结点,则它们代表仍旧需要具体化的值。这主要有两种形式:
  1. 在上图所示的例子中,有三个叶结点xxx。如果从叶结点xxx的任意一个出发向上遍历,都会遇到量词∀x\forall x∀x。这意味着xxx的出现实际上受到了∀x\forall x∀x的约束,因此,它们表示或代表了xxx的任意可能值。
  2. 在向上遍历的过程中,叶结点yyy所遇到的唯一量词是∀x\forall x∀x,但是xxx和yyy没有任何关系;xxx和yyy是两个不同的占位符。所以在这个公式里,yyy是自由的。
    这意味着它的值需要一些附加信息才能确定。例如,内存位置上的内容。

[1]面向计算机科学的数理逻辑——系统建模与推理

谓词逻辑——自由变元与约束变元相关推荐

  1. 901虎年期待和变元的哥德尔数配置——哥德尔原著英译本拆解汉译之五

    虎年期待和变元的哥德尔数配置--哥德尔原著英译本拆解汉译之五 丑牛之年走到了它的尽头,又一轮时序循环将要开始了.为这个尽头和起点,我做了一副对联,按华夏传统用浓墨书写,填在自家的门上.算是概略了这即将 ...

  2. 数字符号哥德尔数配置及变元、公式和谓词散议——哥德尔读后之二十二

    数字符号哥德尔数配置及变元.公式和谓词散议--哥德尔读后之二十二 这篇博文折腾了我近一个月,广州从8月以来几乎天天都在摄氏35度的酷热之中,满以为在秋凉之前可以完成,可你要从阅读哥德尔原著中找到些感觉 ...

  3. LOCATOR.CONTROL 的变元无效:ORG_LOCATOR_CONTROL=‘‘

    LOCATOR.CONTROL 的变元无效:ORG_LOCATOR_CONTROL='' ------------------------------------------------------- ...

  4. 离散数学 第二章 一阶谓词逻辑

    目录 2.1 量词化逻辑 2.1.1 三个定义 2.2 谓词公式及其赋值 2.3 谓词公式的等价与范式等价 2.4 谓词公式的蕴涵 2.4.1 谓词演算中的蕴涵式(重中之重!!!) 2.5 谓词逻辑的 ...

  5. 【离散数学】1. 数理逻辑

    1.数理逻辑 2. 集合论 3. 代数系统 4. 图论 离散数学:研究离散量结构及相互关系的学科 数理逻辑 集合论 代数系统 图论 逻辑:研究推理的科学 数学方法:引进一套符号系统的方法 数理逻辑是用 ...

  6. 人工智能期末——第二章知识的表示

    第二章 知识的表示 知识表示是建立在符号主义的基础上的 符号主义:人类的智能活动主要是获得并运用知识,知识是智能的基础 为了使计算机具有智能.模拟人类的智能行为,就必须使它具有知识 知识需要用适当的模 ...

  7. 山科大离散数学期末考试_西安电子科技大学网络与继续教育学院 2019学年上学期 《离散数学》期末考试试题 (......

    学习中心/函授站_ 姓 名                               学 号 西安电子科技大学网络与继续教育学院 2019学年上学期 <离散数学>期末考试试题 (综合大作 ...

  8. 软考复习资料:专题一:计算机系统知识

    专题一:计算机系统知识 1.计算机硬件基础知识: 1.1计算机系统结构 计算机的发展历史: 1946年,世界上第一台电子计算机ENIAC出现,之后经历了5个发展阶段: 冯式结构计算机的组成部分:存储器 ...

  9. 6 知识表示与逻辑推理(11.16)

    通过知识的有效表示,使人工智能程序能利用这些知识做出决策.制定计划.识别状况.分析事件以及获取结论等.知识表示不仅是人工智能的重要研究内容,而且己经形成了一个独立的子领域(知识工程). 知识表示是知识 ...

最新文章

  1. 网络流学习(转载自ssw 的博客)
  2. CodeProject 文章概览:ASP.NET 模板相关内容
  3. 1028 List Sorting
  4. 校验输入框的内容不能重复_答应我,用了这个jupyter插件,别再重复造轮子了
  5. espcms /public/class_connector.php intval truncation Vul Arbitrary User Login
  6. 计算机网络学习笔记(24. HTTP消息格式)
  7. Modelsim下载,亲测有效
  8. 使用Python实战反欺诈模型
  9. ESP32编程使用OLED屏
  10. 国产框架MindSpore联合山水自然保护中心,寻找、保护「中华水塔」中的宝藏生命
  11. 小魔推如何解决实体商家痛点,实现短视频高转化
  12. 2021双非计算机保研推免经验分享——海王养成系列(一)
  13. c语言规定 程序中各函数之间().,C语言基础笔试题
  14. 文本生成 | 一篇带风格的标题生成的经典工作
  15. 《人性的弱点》(一)
  16. 健身运动装备有哪些?双十一运动健身装备选购指南
  17. WindowForm窗口美化
  18. Java问题诊断工具——JVisualVM
  19. 抽象代数 01.03 子群与商群
  20. EXAR+QAT加速卡驱动安装测试流程

热门文章

  1. 应用ggplot2绘制病例分级统计地图
  2. Secondary NameNode和Standby NameNde的区别
  3. 基于bp神经网络汽车自动变速器最佳挡位判断(Matlab代码实现)
  4. ROS激光雷达数据过滤
  5. 动态生成word文档原来如此简单!Aspose.Words助力以Java编程方式创建丰富的Word文档
  6. Blink学习第一天:How Blink works
  7. 重磅:CACTER邮件安全网关荣膺2023数字中国创新大赛·华南赛区-三等奖
  8. python爬虫实践记录-基于requests访问翻译网页爬取结果
  9. 【牛津大学博士论文】量子自然语言处理范畴论
  10. 这群白帽子从小学习技术,现在已经是黑客大神了!