deniok: (Default)
deniok ([personal profile] deniok) wrote2013-01-07 12:27 am

Просто типизированное лямбда-исчисление

Сделал в ру-Википедии статью про сабж. Еле поспел к Рождеству.  Держите.

[identity profile] ro-che.info (from livejournal.com) 2013-01-12 10:17 am (UTC)(link)
Если связанных с ней переименований не предполагать, то перестаёт работать лемма генерации (у Пирса - лемма инверсии)
 (Γ ⊢ λx:σ.M):ρ ⇒ ∃ τ (Γ,x:σ ⊢ M:τ ∧ ρ = σ → τ) 
поскольку мы не можем более предполагать, что x∉Γ.


Да, в таком виде, конечно, работать не будет. Но работает тривиальная модификация;

(Γ ⊢ λx:σ.M):ρ ⇒ ∃ τ: ∃ Γ' ⊆ Γ: (Γ',x:σ ⊢ M:τ ∧ ρ = σ → τ)

На самом деле, я ничего не имею против отождествления альфа-эквивалентных термов. Но оно не было оговорено в статье. Я всего лишь заметил, что исходя из того, что описано в статье, приведенный терм не типизируется.
Edited 2013-01-12 10:17 (UTC)

[identity profile] deni-ok.livejournal.com 2013-01-12 10:37 am (UTC)(link)
Согласен, без какой-то обработки альфа-эквивалентных термов или дополнительных правил типизации этот терм не типизируется. Но мне кажется, что это такой немножко маргинальный факт, касающийся скорее весьма свободной дисциплины именования переменных "пользователем", а не коренных свойств этой системы типов. Я думаю, что в небольшой энциклопедической статье его обсуждать было бы неуместно. К тому же в обоих АИ для статьи (Барендрегт и Пирс) простые типы типизируются именно так, с одной аксиомой (и подразумеваемым соглашением Барендрегта).