Припустимо, у нас є проста мова, яка складається з термінів:
- якщо - терміни, то так само
Тепер припустимо наступні правила логічного оцінювання:
Припустимо, ми також додамо наступне функціональне правило:
Для цієї простої мови із заданими правилами оцінювання я хочу довести наступне:
Теорема: Якщо і r → t, то існує деякий термін u такий, що s → u і t → u .
Я доводжу це індукцією на структуру . Ось мій доказ поки що, все склалося добре, але я застряг у самій останній справі. Здається, що індукція на структуру r не є достатньою, може хтось мені допоможе?
Доказ. Індукцією на ми відокремимо всі форми, які може приймати r :
- - константа, нічого доказувати, оскільки нормальна форма нічого не оцінює.
- якщо істинне, то r 2 else r 3 . (а) обидва виведення були виконані за правилом E-IfTrue. У цьому випадку s = t , тому доводити нічого немає. (b) одне виведення було зроблено за правилом E-IfTrue, а інше - правилом E-Funny. Припустимо, що r → s було зроблено за допомогою E-IfTrue, інший випадок настільки ж доведений. Тепер ми знаємо, що s = r 2 . Ми також знаємо, що t = якщо істинне, то r ′ 2 else r 3 і що існує деяке виведення r 2 → (приміщення). Якщо тепер виберемо u = r ′ 2 , то закінчимо випадок.
- якщо false, то r 2 else r 3 . Еквівалентно доведено, як зазначено вище.
- якщо r 1, то r 2 else r 3 з r 1 ≠ вірно або помилково. (а) обидві деривації були зроблені за правилом E-If. Тепер ми знаємо, що s = якщо r ′ 1, то r 2 іще r 3, а t = якщо r ″ 1, то r 2 іначе r 3 . Ми також знаємо, що існує деривація r 1 → r ′ 1і (приміщення). Тепер ми можемо використовувати гіпотезу про індукцію, щоб сказати, що існує деякий термін r ‴ 1, такий, що r ′ 1 → r ‴ 1 і r ″ 1 → r ‴ 1 . Тепер ми закінчуємо випадок, сказавши u = якщо r ‴ 1, то r 2 else r 3 і помічаючи, що s → u і t → uза правилом E-If (b) одне виведення було здійснено за допомогою правила E-If і одне за правилом E-Funny.
Останній випадок, коли одне виведення було зроблено E-If, а інше E-Funny - це той випадок, якого я пропускаю ... Я, здається, не можу використовувати гіпотези.
Допомога буде дуже вдячна.