Maak een predicaat split_up/4
die een lijst getallen opsplitst in 2 sub-lijsten die respectievelijk de elementen kleiner of gelijk aan het eerste argument en groter dan het eerste argument toont. Gebruik groene cuts om het programma te optimaliseren.
Niet:
?- split_up(5,[7,5,3,2,1,5,9,8,6,4,2], Lo, Hi).
Lo = [5, 3, 2, 1, 5, 4, 2],
Hi = [7, 9, 8, 6] ;
false.
Wel:
?- split_up(5,[7,5,3,2,1,5,9,8,6,4,2], Lo, Hi).
Lo = [5, 3, 2, 1, 5, 4, 2],
Hi = [7, 9, 8, 6].