下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于Prolog二元关系闭包运算的研究与实现摘要:在代数系统中,关系作为一种抽象工具,在计算机科学研究领域有着极其广泛的应用。本文在研究传统闭包求解方法的根底上,结合其思想给出了用人工智能语言Prolog实现传递闭包求解策略的思想与方法,并在实例中给予论证,此方法具有一定的典型研究意义及价值。论文关键词:二元关系,传递闭包,人工智能,回溯Prolog是逻辑程序设计有关证明详见文献【3】。2 用prolog实现二元关系的闭包运算根据上述传统闭包求解方法,很容易可以看出自反、对称闭包的求解方法相比照拟容易,只需要在其中添加一些特殊的关系序对即可。而针对传统传递闭包求解的复杂性,可根据上述传递闭包的
2、定义和性质,结合人工智能语言Prolog的语法特点和结构实现闭包运算。2.1根本思想与步骤综合传统闭包求解方法和思想以及Prolog语言的语法规那么,用Visual Prolog实现传递闭包运算的根本步骤为:STEP1 分析描述问题根据上一节对集合二元关系假设干根本性质的介绍及闭包的定义及求解方式,用Visual Prolog实现传递闭包运算。STEP2 定义谓词在Prolog中,谓词表示子句中关系的名称,本问题领域定义的相关谓词分别为:r-关系对序偶transitive_closure-传递闭包STEP3 定义事实及规那么在理解二元关系的有关定义及性质根底上,按照Prolog语言的语法和上面
3、所定义的谓词,首先定义的事实和规那么子句分别为:r(A,B) /*元素A和B之间存在关系R*/transitive_closure(A,B):-r(A,B). /*求R,Rt(R) */transitive_closure(A,B):-r(A,C),r(C,B). /* 求R2 ,R2t(R)*/transitive_closure(A,B):- r(A,D),r(D,E),r(E,B). /* 求R3 ,R3t(R)*/*定义求解传递闭包规那么*/根据Prolog的取规那么又等价于:transitive_closure(A,B):-r(A,B);r(A,C),r(C,B);r(A,D),r(
4、D,E),r(E,B);以上,都是Prolog中的子句,称为无条件子句,一般情况下在知识库中只表示事实;而称为条件子句,合起来构成一个Prolog程序。下面的步骤需要根据实例进行。2.2 举例例1设集合A=a, b ,c,, R=(a ,a),(a, b),(b ,a),(c, b),求关系R的传递闭包。关系R的有向图和布尔矩阵表示法分别如图1a和b所示。图1 关系R的有向图和矩阵表示STEP1 按照Prolog语言语法,对上述实例,建立如下事实:r(a,a). /*a, aR */r(a,b). /*a, bR */r(b,a). /*b, aR */r(c,b). /*c, bR */ST
5、EP2 使用传递闭包规那么R + =R*=RR2R3Rn:transitive_closure(A,B):-r(A,B); /*求R,Rt(R) */transitive_closure(A,B):-r(A,C),r(C,B); /* 求R2 ,R2t(R)*/transitive_closure(A,B):-r(A,C),r(C,D),r(D,B) ; /* 求R3 ,R3t(R)*/STEP3 用目标transitive_closure(X,Y)进行提问。STEP4 完整的程序运行界面及结果分别参见图2图2 求传递闭包的运行界面及结果STEP5 分析结果:在这里求出的所有关系序对图3消除重
6、复解的运行界面及结果图由运行结果图可以看到,求解的最终结果中,没有出现重复解,使得求解传递闭包的过程完全自动化,当然这只是其中的一种设计方法。4结语关系作为一种抽象工具,它在计算机科学中的形式语言与自动机理论等方面又重要作用。特别是几种特殊关系,其求解方法更应该被掌握。本文所介绍的基于Prolog实现二元关系闭包运算有着一定的典型研究意义及价值。根据同样的设计步骤和思想,可并对其做以扩展,对二元关系上组合关系的性质进行判断,例如,自反、对称、传递、等价和偏序关系等。参考文献【1】 苏畅,蔡经球. 新一代智能语言VISUAL PROLOG.计算机应用研究,1999.【2】 马光思. 离散数学.西安:西安电子科技大学出版社,2004.7.【3】 Kenneth H.Rosen. Discrete Mathematics and its Applications(Fifth Edition).China Machine Press北京:机械工业出版社,2003.3.【4】 雷英杰,华继学,徐彤
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025劳动合同签订管理办法
- 2024年环保型农药研发及生产许可合同
- 2025餐饮的承包经营合同模板
- 2025司法考试案例分析合同约定工资“款到提成”是否有效
- 2024年02月福建2024兴业银行厦门分行校园招考笔试历年参考题库附带答案详解
- 药物作用靶点识别-洞察分析
- 稀有金属国际贸易合作-洞察分析
- 语言接触与社会变迁-洞察分析
- 眼科影像数据分析-洞察分析
- 亳州2024年安徽亳州利辛县面向我省退役运动员专项招聘体育教师笔试历年典型考点(频考版试卷)附带答案详解
- 主动脉夹层介入手术的护理
- 高素质农民培育培训
- 机电安装工程施工质量标准及验收规范
- 过程控制系统及仪表 王再英等 课后答案(全)
- 《绿色化学化工技术》课件
- 民法典中的劳动法与劳动纠纷解决的法律适用
- 广东省广州市黄埔区2023-2024学年八年级上学期期末生物试卷+
- 四川省达州市2023-2024学年八年级上学期期末历史试题(含答案)
- 国开电大专科《监督学》期末纸质考试总题库2024版
- 合伙开学校协议
- 武汉理工大学2019-2020学年第一学期2018级软件工程专业《Java语言程序设计》期末考试-
评论
0/150
提交评论