База ответов ИНТУИТ

Объектно-ориентированное программирование и программная инженерия

<<- Назад к вопросам

Зависимые переменные лямбда-выражений, также как и формальные параметры методов в программировании, могут быть переименованы без потери смысла. Операция, выполняющая такое преобразование в лямбда-выражениях, называется альфа – преобразованием. При выполнении этого преобразования зависимой переменной x можно дать:

(Отметьте один правильный вариант ответа.)

Варианты ответа
новое имя, например y, при условии, что новая переменная y не является зависимой переменной лямбда-выражения
новое имя, например y, при условии, что новая переменная y не является свободной переменной лямбда-выражения
новое имя, например y, при условии, что новая переменная y не является свободной и не является зависимой переменной лямбда-выражения. Выполнение этого условия необходимо и достаточно для выполнения альфа преобразования(Верный ответ)
любое другое имя без всяких ограничений на выбор нового имени
Похожие вопросы
Пусть дано лямбда-выражение: \lambda x : INTEGER | [\lambda y : INTEGER | x+y+z ] При выполнении альфа преобразования можно:
Под трансформацией лямбда-выражения будем понимать последовательное выполнение ряда операций, включающих альфа-преобразование и бета-редукцию. Пусть заданы две различные трансформации, преобразующие лямбда-выражение exp в выражения exp1 и exp2. Согласно теореме Черча – Россера:
Связанные переменные лямбда-выражения это:
Одной из основных операций, применяемых к лямбда-выражениям, является операция, называемая бета-редукцией, позволяющая избавиться от связанных переменных выражения путем подстановки. Лямбда-выражение: [\lambda x : X | exp] (e) преобразуется в выражение exp [x := e] Какие утверждения справедливы для бета-редукции?
Что такое лямбда исчисление? Укажите корректные высказывания
Имена в подвыражениях лямбда выражения могут конфликтовать. Какие утверждения справедливы относительно устранения возникающей некорректности записи выражения?
Какие утверждения справедливы для лямбда-выражения?
Какие утверждения справедливы относительно лямбда определения функции:
В родительском классе Р задан эффективный метод М с предусловием "Быть пушистым" and "Быть белым". Наследник этого класса Р1 переопределил этот метод, задав соответственно предусловие: require else "Быть белым". Наследник этого класса Р2 переопределил этот метод, задав соответственно предусловие: require else "Быть пушистым". Наследник этого класса Р3 переопределил этот метод, задав соответственно предусловие: require else "Быть натуральным". Объект, передаваемый на вход методу М, обладает свойствами "Быть пушистым" and "Быть натуральным" and "Быть белым". Каково число реализаций метода М, которые могут применяться для обработки этого объекта?
В родительском классе Р задан эффективный метод М с предусловием "Быть пушистым" and "Быть белым". Наследник этого класса Р1 переопределил этот метод, задав соответственно предусловие: require else "Быть белым". Наследник этого класса Р2 переопределил этот метод, задав соответственно предусловие: require else "Быть пушистым".Наследник этого класса Р3 переопределил этот метод, задав соответственно предусловие: require else "Быть натуральным". Объект, передаваемый на вход методу М, обладает свойствами "Быть белым" and "Быть натуральным". Методы какого класса могут применяться для обработки этого объекта?