简单模式逻辑程序的语义与终止性及确定性布尔函数依赖分析
简单模式逻辑程序的语义与终止性
简单模式逻辑程序在逻辑编程领域有着重要的研究价值,其涉及到语义的理解和程序终止性的判断。
快速排序程序示例
以下是一个快速排序程序的代码:
quicksort(Xs, Ys) ← Ys is an ordered permutation of Xs.
quicksort(Xs,Ys) ← quicksort dl(Xs,Ys,[]).
quicksort dl([X|Xs],Ys,Zs) ← partition(Xs,X,Littles,Bigs),
quicksort dl(Bigs,Ys1,Zs).
quicksort dl(Littles,Ys,[X|Ys1]),
quicksort dl([],Xs,Xs).
partition([X|Xs],Y,[X|Ls],Bs) ← X =< Y, partition(Xs,Y,Ls,Bs).
partition([X|Xs],Y,Ls,[X|Bs]) ← X > Y, partition(Xs,Y,Ls,Bs).
partition([],Y,[],[]).
mode quicksort(In,Out).
mode quicksort dl(In,Out,In).
mode partition(In,In,Out,Out).
mode =<(In,In).
mode >(In,In).
这个程序通过 quicksort 函数实现对列表的排序, qui
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



