logical-purity

    3热度

    2回答

    我想结合以前的堆栈溢出问题的一些纯谓词来做出我自己的谓词。 我想给出一个c的列表(它们与它们有相关的事实 - 'at')和一个'特征'项,它有一个操作符和一个'at'的阈值。我想分割c的列表,如果c没有相应的'at',它就会进入假分区,否则运算符会测试'at'来得到'c',然后分割适当的。 例如: ?-cpgpartition_ts_fs_feature([c1,c2,c3],Ts,Fs,feat

    4热度

    1回答

    问题:有一些地方有一些我可以查看的程序吗?我说的是rosetta代码风格,但是我去那里看到几乎所有的程序都是用非纯序言语法(使用剪切,使用IS,那种类型的东西)解决的,由于我的学习要求,这对我没有帮助。 那么有没有一半的好源?我正在谈论插入一个元素在一个地方等小程序,我发现我学习方式更多,当我可以检查我是否正在做正确的事情 大家好,我正在学习序言,已经找到了prolog现在!这帮助我在两节快速阅读

    5热度

    2回答

    我开始学习Prolog,我想要一个给定整数P的程序给整数A和B,使得P = A² + B²。如果没有满足这个方程的A和B值,false应退还 例如:如果P = 5,它应该给A = 1和B = 2(或A = 2和B = 1),因为1² + 2² = 5。 我想这应该工作: giveSum(P, A, B) :- integer(A), integer(B), integer(P), P is A*A

    6热度

    1回答

    本页面的练习09 http://www.ic.unicamp.br/~meidanis/courses/mc336/2009s2/prolog/problemas/要求创建一个将重复元素打包到子列表中的谓词。 一个直接的解决方案是简单的 pack([], []). pack([H|T], [I|U]) :- split(H, T, I, P), pack(P, U). 其

    4热度

    2回答

    我对prolog非常陌生。据我所知,Pure Prolog仅限于Horn子句。 这是一个非常简单的Prolog程序 - % student(Snr , FirstName , LastName , Semester). student( 1000 , 'Anna' , 'Arm' , 'ti2' ) . student( 1001 , 'Rita' , 'Reich' , '

    7热度

    2回答

    这是我的课堂问题之一。 我能与一堆的if-else,但有人告诉我的创建我自己的Prolog程序,我的计划是不是在序言根基原则其一全面声明。 这里是我的代码 %start with :- go. is_spicy :- write('Do you want spicy? (yes/no)'), read(Preference), (Preference == yes

    4热度

    1回答

    当第一个和最后一个参数都是地面/非地面,不是地面/地面或地面/地面,并且第二个和第三个参数都是地面时,我有一个复杂的谓词有四个参数需要工作。 即谓词(A,B,C,d)。 因为它是一个任务的一部分,我不能提供我的实际代码。 我有它大多工作,但我收到错误实例当A不接地,但d是。但是,我列出了一些导致问题的代码。当我改变谓词的目标顺序时,它在D被磨削和A不被磨削时起作用,但是当这样做时,它不再适用于磨削

    2热度

    2回答

    的具体化谓词变体的冗余答案我想为本论坛中的某些 other recent problem提供一个逻辑纯解决方案。 作为开始,我实施了append/3的物化变体,并将其命名为appendR/4。它是基于@false在Prolog union for A U B U C实施的谓词if_/3和(=)/3: appendR([],Ys,Zs,T) :- =(Ys,Zs,T). appendR(