preorder.pl

loading
details
attribute value
description
owner Johannes Waldmann
uploaded 2017-08-17 03:45:17.0
disk size 359 Bytes
downloadable true
type
attribute value
name no_type
processor id 1
description this is the default benchmark type for rejected benchmarks and benchmarks that are not associated with a type.
owning community none
loading contents
% Adapted from LP/SGST06/preorder.pl
% terminating

%query: preorder(i,o).
preorder(X,Y) :- pdl(X,Y-[]).

pdl(nil,Y) :- !, eq(Y,X-X).
pdl(T,[X|Xs]-Zs) :- value(T,X), left(T,L), right(T,R), pdl(L,Xs-Ys), pdl(R,Ys-Zs).

left(nil,nil).
left(tree(L,_,_),L).

right(nil,nil).
right(tree(_,_,R),R).

value(nil,_).
value(tree(_,X,_),X).

eq(X,X).
popout

content may be truncated. 'popout' for larger text window.

actions get anonymous link download benchmark