naiverev Cons x xs app naiverev xs Cons x Nil app Cons x xs ys Cons x app xs ys notEmpty Cons x xs True notEmpty Nil False naiverev Nil Nil app Nil ys ys goal xs naiverev xs naiverev 1 Cons 2 app 2 Nil 0 notEmpty 1 True 0 False 0 goal 1 INNERMOST