欢迎来到天天文库
浏览记录
ID:27125879
大小:134.00 KB
页数:23页
时间:2018-12-01
《实现基于谓词逻辑得归结原理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实用标准文案河南城建学院《人工智能》实验报告实验名称:实现基于谓词逻辑的归结原理成绩:____专业班级: 学号:姓名:实 验 日 期:2014年05月13日实验器材:一台装PC机。一、实验目的熟练掌握使用归结原理进行定理证明的过程,掌握基于谓词逻辑的归结过程中,子句变换过程、替换与合一算法、归结过程及简单归结策略等重要环节,进一步了解机器自动定理证明的实现过程。二、实验要求对于任意给定的一阶谓词逻辑所描述的定理,要求实现如下过程:(1)谓词公式到子句集变换;(2)替换与合一算法;(3)在某简单归结策略下的归结。三、实验步骤步1设计谓词公式及自居的存储结构,即内部表示。注意
2、对全称量词"x和存在量词$x可采用其他符号代替;步2实现谓词公式到子句集变换过程;步3实现替换与合一算法;步4实现某简单归结策略;步5设计输出,动态演示归结过程,可以以归结树的形式给出;步6实现谓词逻辑中的归结过程,其中要调用替换与合一算法和归结策略。精彩文档实用标准文案一、代码谓词公式到子句集变换的源代码:#include#include#include#includeusingnamespacestd;//一些函数的定义voidinitString(string&ini);//初始化stringdel_
3、inlclue(stringtemp);//消去蕴涵符号stringdec_neg_rand(stringtemp);//减少否定符号的辖域stringstandard_var(stringtemp);//对变量标准化stringdel_exists(stringtemp);//消去存在量词stringconvert_to_front(stringtemp);//化为前束形stringconvert_to_and(stringtemp);//把母式化为合取范式stringdel_all(stringtemp);//消去全称量词stringdel_and(stringtem
4、p);//消去连接符号合取%stringchange_name(stringtemp);//更换变量名称//辅助函数定义boolisAlbum(chartemp);//是字母stringdel_null_bracket(stringtemp);//删除多余的括号stringdel_blank(stringtemp);//删除多余的空格voidcheckLegal(stringtemp);//检查合法性charnumAfectChar(inttemp);//数字显示为字符//主函数voidmain(){cout<<"------------------求子句集九步法演示--
5、---------------------"<P)";//orign="~(#x)y(x)";//orign="~((@x)x!b(x))";//orign="~(x!y)";精彩文档实用标准文案//orign="~(~a(b))";stringorign,temp;charcommand,command0,command1,command2,command3,command4,command5,command6,command7,comm
6、and8,command9,command10;//=============================================================================cout<<"请输入(Y/y)初始化谓词演算公式"<>command;if(command=='y'
7、
8、command=='Y')initString(orign);elseexit(0);//=============================================================================co
9、ut<<"请输入(Y/y)消除空格"<>command0;if(command0=='y'
10、
11、command0=='Y'){//del_blank(orign);//undonecout<<"消除空格后是"<>command1
此文档下载收益归作者所有