Описание слайда:
1 inS(Item, btree(Item, _, _)). 1 inS(Item, btree(Item, _, _)). 2 inS(Item, btree(Root, Left, _)) :– Item =< Root, in(Item, Left). 3 inS(Item, btree(Root, _, Right)) :– Item > Root, in(Item, Right). Бинарлы ағашты мына тізім түрінде көрсетуге болады: btree2list(Tree, List). 1 btree2list(Tree, List):– btree2list(Tree, [], List). 2 btree2list(nil, List, List). 3 btree2list(btree(Root, Left, Right), List, [Root | RList]) :– btree2list(Left, List, List1), btree2list(Right, List1, RList). Бірінші ереже үш параметрлі предикатты шақыруды бағыттайды, оның параметрлерінің бірі бос тізім болып табылады. Екіншісі – индукция базасы. Үшіншісі – алдымен бір тізімнен нәтижені жинақтайды, одан кейін келесіден, соңынан оларға ағаш түбірін қосады.