Это комментарий. Любая строка, которая не начинаеться с 3 пробелов — комментарий. Аргументы (входные и выходные) функции могут стоять с любой стороны от названия. A fun1 B. Аргументы начинаются с заглавной буквы, все остальное название функции. Название может состоять из нескольких слов. A fun other B Определяем функцию «= 0», это название из двух слов (равно нулю). Один параметр (Z) и нет тела: Z = 0 Определяем функцию «натуральное число», и указываем, что ноль — натуральное. Разделяем вызовы запятыми Z is natural, Z = 0 Определяем функцию cледующее число « + 1 =», и указываем, что следующее за любым натуральным — натуральное N is natural, N + 1 = N2, N2 is natural Функции = 1, = 2, = 3 N = 1, P = 0, P + 1 = N N = 2, P = 1, P + 1 = N N = 3, P = 2, P + 1 = N Индуктивное определение оператора больше или равно. Любое число, больше или равно 0. N >= Z, Z = 0 Если одно число больше или равно другого, то и Следующие за ними числа больше или равны N >= M, N2 + 1 = N, M2 + 1 = M, N2 >= M2 Идея в том, что если тебе надо сравнить 5 и 2, ты знаешь, что результат точно такой же как и для 4 и 1, 3 и 0. А последний ты из первого определения берешь Сложение, аналогично с >=. Любое число + 0 равно самому себе N + Z = N, Z = 0 (n + 1) + m = (n + m) + 1 N + M = K, N2 + 1 = N, K2 + 1 = K, N2 + M = K2 Числа фибоначчи fibonacci Z = Z, Z = 0 fibonacci N = N, N = 1 fibonacci N = F, N >= 2, F1 + F2 = F, fibonacci N1 = F1, N1 + 1 = N, fibonacci N2 = F2, N2 + 1 = N1 Ключевое слово ? - вернуть значение fibonacci N = ?, N = 3 Должно вернуть 3 число Фибоначии > (? = 2)