Функциональное программирование — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(Новая страница: «=Фотки= ==Кр2== * [https://pp.vk.me/c625522/v625522095/bb5e/DJapJCj1SGE.jpg] * [https://pp.vk.me/c625522/v625522095/bb68/OwKD9uzHoA8.jpg] * [https://pp.vk....»)
 
м
Строка 1: Строка 1:
=Фотки=
+
=Кр1=
==Кр2==
+
1) Убрать все сокращения и расставить все скобки:
 +
 
 +
(λ a b . (λ c d e . e) a) (x y) y (λ f . x) y
 +
 
 +
2) Привести в нормальную форму
 +
 
 +
λ a b . a (λ c . b c) a (λ d . d) a
 +
 
 +
3) Привести в нормальную форму
 +
 
 +
λ a . (λ b . y) (λ c . y (y (λ d . a a a)) (x x) a)
 +
 
 +
4) Сделать две редукции нормальным порядком:
 +
 
 +
(λ a . y (y (y (λ b . a))) y) (x (x (x (λ c d . d) y)) x)
 +
 
 +
5) Выписать систему уравнений типизации
 +
 
 +
(λ a . a a) (λ b c . c)
 +
 
 +
6) Выписать кайнды конструкторов типов, выписать типы конструкторов, закодировать по Чёрчу:
 +
 
 +
data Policeman a = Doctor a | Mice
 +
data Tree a b c = Frog c | Pip (Tree a b c)
 +
 
 +
=Кр2=
 +
==Фотки==
 
* [https://pp.vk.me/c625522/v625522095/bb5e/DJapJCj1SGE.jpg]
 
* [https://pp.vk.me/c625522/v625522095/bb5e/DJapJCj1SGE.jpg]
 
* [https://pp.vk.me/c625522/v625522095/bb68/OwKD9uzHoA8.jpg]
 
* [https://pp.vk.me/c625522/v625522095/bb68/OwKD9uzHoA8.jpg]
Строка 14: Строка 40:
 
* [https://pp.vk.me/c625826/v625826822/916a/2US214bNwv0.jpg]
 
* [https://pp.vk.me/c625826/v625826822/916a/2US214bNwv0.jpg]
 
* [https://pp.vk.me/c625826/v625826822/9174/QRhQIqwNX5Q.jpg]
 
* [https://pp.vk.me/c625826/v625826822/9174/QRhQIqwNX5Q.jpg]
==Кр3==
+
=Кр3=
==Кр4==
+
=Кр4=

Версия 22:18, 25 апреля 2015

Кр1

1) Убрать все сокращения и расставить все скобки:

(λ a b . (λ c d e . e) a) (x y) y (λ f . x) y

2) Привести в нормальную форму

λ a b . a (λ c . b c) a (λ d . d) a

3) Привести в нормальную форму

λ a . (λ b . y) (λ c . y (y (λ d . a a a)) (x x) a)

4) Сделать две редукции нормальным порядком:

(λ a . y (y (y (λ b . a))) y) (x (x (x (λ c d . d) y)) x)

5) Выписать систему уравнений типизации

(λ a . a a) (λ b c . c)

6) Выписать кайнды конструкторов типов, выписать типы конструкторов, закодировать по Чёрчу:

data Policeman a = Doctor a | Mice data Tree a b c = Frog c | Pip (Tree a b c)

Кр2

Фотки

Кр3

Кр4