1 | 10. I(NDA) = 1of(hd(C)) 11. ( i: (||C||-1).
NDA(1of(C[i]),hd(rev(2of(C[i]))),1of(C[(i+1)])) & 2of(C[(i+1)]) = rev(tl(rev(2of(C[i])))))
& 1of(hd(rev(C))) = q
& 2of(hd(rev(C))) = nil 12. NDA(q,a,p) 13. i:  14. 0 i 15. i < ||map( c. < 1of(c),a.2of(c) > ;C)||+1-1 16. i < ||C||-1 2of(C[(i+1)]) = rev(tl(rev(2of(C[i])))) |