У меня есть то, что я бы назвал философским вопросом о λ-исчислении.
Когда вы изучите λ-исчисление, вы будете удивлены, увидев все, что вы можете сделать там. Вы можете определять целые числа, арифметические операции, логические значения, операторы if-then-else, циклы, рекурсивные функции и т. Д. Я считаю, что это было доказано в вычислительном отношении завершено.
Но с другой стороны, если вы подумаете о том, что вы можете делать с функциями в λ-исчислении, вы поймете, что единственное, что вы можете сделать, - это передать ему функцию, и она вернет другую функцию. И этот процесс никогда не заканчивается.
Итак, как вы можете извлечь результат из вычислений?
Предположим, что результатом выражения является функция f. Вы хотите проверить, fявляется ли то, что вы ожидали. Вы можете проверить это, взять функцию, которую вы знаете, применить fк ней и получить g. Но чтобы проверить gправильность, теперь вам нужно проверить, что gделает. И вы начинаете все сначала. Так как вы можете рассказать что-нибудь о f?
Мне кажется, что вы можете заменить все функции в λ-исчислении одной функцией - функцией тождества I = λx.x, и все будет работать, как описано в λ-исчислении. Церковная цифра, 3когда дано fи xвозвращается f(f(f(x))). Но поскольку fи xможет быть только так I, то возвращается I. Iприменяется Iи Iтакже возвращает I. Так что Iудовлетворяет определению 3. «Булевы значения» (λxy.x)и (λxy.y)нужно 2 аргумента, которые будут, Iи Iпоэтому оба булевых значения вернутся I. Каждый эквивалент идентичности, даже если они ведут себя точно в соответствии с их определениями.
Так как ты делаешь разницу? Как вы показываете, что λ-исчисление имеет дело не только с одной функцией?
Есть ли концепция идентичности? Можете ли вы определить функцию сразу, не оценив ее? Я считаю, что было доказано, что нет способа проверить 2 функции на равенство.
Или λ-исчисление не о функциях, а о формальном описании того, что они делают? Это означало бы, что выражения λ не только определяют, что делают функции, но также являются данными, которыми функции манипулируют. Поэтому , когда вы пишете A B, не применяется Aк B, но вы применяете функцию , описанная в строке Aдля формального определения функции , содержащейся в Bвозвращая формальное определение.
Что на самом деле происходит в λ-исчислении? С какими математическими объектами он имеет дело?
Следовать за:
Итак, из приведенного ниже ответа кажется, что λ-исчисление не столько о функциях в математическом смысле, сколько о подмножестве функций, которые могут быть выражены в виде выражений λ. Или даже больше о манипуляции выражениями.