Являются ли внутренние сокращения постоянными в нетипизированном λ-исчислении?


14

(Я уже спрашивал об этом в MathOverflow, но не получил там ответов.)

Фон

В нетипизированном лямбда-исчислении термин может содержать много переопределений, и различные варианты выбора, которые можно уменьшить, могут привести к совершенно разным результатам (например, (λИкс,Y)((λИкс,ИксИкс)λИкс,ИксИкс) которые в один шаг ( β -) сводится либо к Y либо к себе). Различные (последовательности) вариантов того, где сокращать, называются стратегиями сокращения . Термин T называется нормализующее , если существует стратегия восстановления , которая приносит Tк нормальной форме. Термин T называется сильно нормализующим , если каждая стратегия сокращения приносит T к нормальной форме. (Меня это не беспокоит, но слияние гарантирует, что не может быть более одной возможности.)

Говорят, что стратегия редукции нормализует (и в некотором смысле это наилучший вариант ), если всякий раз, когда T имеет нормальную форму, то на этом мы и окажемся. Самая крайняя левая стратегия нормализуется.

На другом конце спектра стратегия сокращения называется вечной (и в некотором смысле наихудшей возможной), если всякий раз, когда существует бесконечная последовательность сокращения из члена , стратегия находит такую ​​последовательность - другими словами, мы могли бы не нормализоваться, тогда мы это сделаем.T

Я знаю о стратегиях вечного сокращения и F b k, определяемых соответственно как F b k ( C [ ( λ x . S ) t ] ) = C [ s [ t / x ] ], если  t  сильно нормализует F b k ( C [ ( λ x . S ) t ] ) = C [FFбК и F ( C [ ( λ x . s ) t ] ) = C [ s [ t / x ] ], если  x  встречается в  s или если  t  включено нормальная форма F ( C [ ( λ x . s ) t

FбК(С[(λИкс,s)T])знак равноС[s[T/Икс]]если T сильно нормализуетсяFбК(С[(λИкс,s)T])знак равноС[(λИкс,s)FбК(T)]в противном случае
(В обоих случаях указанныйβ-переопределение являетсякрайним левымв членеC[(λx.S)t]- и на нормальных формах Стратегии редукции обязательно идентичны.) СтратегияFявляется дажемаксимальной- если она нормализует термин, то для этого использовалась максимально длинная последовательность редукции. (См., Например, 13.4 в книге Барендрегта.)
F(С[(λИкс,s)T])знак равноС[s[T/Икс]]если Икс происходит в s, или если T в нормальной формеF(С[(λИкс,s)T])знак равноС[(λИкс,s)F(T)]в противном случае
βС[(λИкс,s)T]F

Рассмотрим теперь крайнюю левую стратегию сокращения. Неофициально, это только уменьшит redex, который не содержит других redex. Более формально, оно определяется как L ( t ) = t, если  t  на нормальной форме L ( λ x . S ) = λ x . L ( s ) для  s  не в нормальной форме L ( s t ) = L ( s ) t для  s  не в нормальной формеβ

L(T)знак равноTесли T в нормальной формеL(λИкс,s)знак равноλИкс,L(s)за s не в нормальной формеL(sT)знак равноL(s)Tза s не в нормальной формеL(sT)знак равноsL(T)если s, но нет T в нормальной формеL((λИкс,s)T)знак равноs[T/Икс]если sT оба в нормальной форме

Естественная интуиция для самого левого-внутреннего сокращения состоит в том, что он выполнит всю работу - никакой редекс не может быть потерян, и поэтому он должен быть вечным. Поскольку соответствующая стратегия вечна для (нетипизированной) комбинаторной логики (самые внутренние сокращения вечны для всех ортогональных TRW), это не похоже на полностью беспристрастный голубоглазый оптимизм ...

λ

Если ответ окажется «нет», указатель на контрпример также будет очень интересным.



... как уже упоминалось в самой первой строке.
Kow

1
@kow: Да, вы правы, и в кросспостинге нет ничего плохого :) Ссылка предназначена только для того, чтобы следовать за комментариями и ответами в МО, чтобы избежать двойного ответа. Смотрите обсуждение по мета .
Сянь-Чи Чанг 之 之

1
@kow: Когда вы в следующий раз создадите кросс-пост, пожалуйста, не забудьте добавить ссылку, желательно в обоих направлениях.
Цуёси Ито

1
L(L(s)T)sL(s)L(L(s))

Ответы:


13

TTTзнак равно(λИкс,(λY0,1)(ИксИкс)) прекратит использование L даже если оно имеет бесконечное сокращение.

Первый шаг сокращения: L(TT)знак равноL(T)Tзнак равноL(λИкс,(λY0,1)(ИксИкс))Tзнак равно(λИкс,L((λY0,1)(ИксИкс)))Tзнак равно(λИкс0,1)T,

Первый шаг сокращения с F является F([(λИкс,(λY0,1(ИксИкс)))T]))знак равно(λY0,1)(TT),

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.