Ответ 1
Я думаю, что ваш вопрос немного смущен. Прошу пояснить несколько моментов.
Прежде всего указанная вами теорема традиционно известна как теорема стандартизации и принадлежит Карри и Фейсу (Комбинирующая логика I, 1958), обобщенная на eta-редукция Хиндли (Стандартное и нормальное сокращение), а затем пересмотрено многими другими авторами (см., например, question).
Во-вторых, внешнее сокращение отличается от вызова потребностью (вызов по необходимости - это даже не стратегия сокращения в традиционном смысле слова).
Приходя к проблеме сложности, в этом и заключается суть вопроса, вызов по требованию является оптимальным только в отношении слабой редукции. Однако слабая редукция не всегда является наилучшим способом сокращения лямбда-терминов. Хорошо известным примером является следующий термин
n 2 I I
где n и 2 - целые числа в церкви, а я - тождество. Я добавляю два я в конце, иначе слабые языки сократят вычисления слишком рано.
Заметим, что член сводится к
2 (2 (... (2 I))..) I
и (2 I) сводится к I. Итак, с самой внутренней редукцией вы могли бы уменьшить член в линейном времени w.r.t n.
С другой стороны, я приглашаю вас выполнить предыдущие вычисления в Haskell, и вы обнаружите, что время сокращения растет экспоненциально по n. Я оставляю вам понять причины этого явления.
Аналогичное обсуждение было сделано в этой нити.