想设计一个能让电脑"学习"的机制,
比如一个read(X),电脑发现X这个事实它还不知道,
那就会asserta(X)。
现在问题是,程序结束后,我如何能让X存在电脑里的某个地方,
就像是我们大脑记得这件事情一样。
当然,我可以用write(X)将X写进某个文件里存在系统里,
但我还想要做到的是,如果电脑发现它错了,它会修正自己的记忆,
比如用confidence表示对一件事情的信心程度,如果Y与X矛盾,电脑对Y的信心又比较高,
电脑会从记忆中删除X事实,加入Y事实。
如果刚才用的是write(X)写进文件里,现在要改就不好改了。
总之,数据库的管理最最基本的就是要能方便的实现新增、修改、删除、查询,
而对于动态谓词,Prolog有没有一种方法能方便的做到这些功能,并且当我关掉Prolog时仍然不会消失?
比如一个read(X),电脑发现X这个事实它还不知道,
那就会asserta(X)。
现在问题是,程序结束后,我如何能让X存在电脑里的某个地方,
就像是我们大脑记得这件事情一样。
当然,我可以用write(X)将X写进某个文件里存在系统里,
但我还想要做到的是,如果电脑发现它错了,它会修正自己的记忆,
比如用confidence表示对一件事情的信心程度,如果Y与X矛盾,电脑对Y的信心又比较高,
电脑会从记忆中删除X事实,加入Y事实。
如果刚才用的是write(X)写进文件里,现在要改就不好改了。
总之,数据库的管理最最基本的就是要能方便的实现新增、修改、删除、查询,
而对于动态谓词,Prolog有没有一种方法能方便的做到这些功能,并且当我关掉Prolog时仍然不会消失?