Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[lambda] Boehm_out_lemma (Proposition 10.3.7 (i) [1, p.248]) #1212

Merged
merged 1 commit into from
Mar 21, 2024

Conversation

binghe
Copy link
Member

@binghe binghe commented Mar 14, 2024

This PR continue #1205 and finally finishes the proof of "Böhm out lemma" (Proposition 10.3.7 (i) [1, p.248]):

Screenshot 2024-03-18 alle 10 15 30
[Boehm_out_lemma] (boehmTheory)
⊢ ∀p X M.
    FINITE X ∧ subterm X M p ≠ NONE ⇒
    ∃pi ss. Boehm_transform pi ∧ apply pi M == subterm' X M p ISUB ss

Note that the antecedent subterm X M p ≠ NONE in the formal version implies the antecedents of the textbook version, by the following new lemma:

[subterm_imp_ltree_paths]
⊢ ∀p X M. FINITE X ∧ subterm X M p ≠ NONE ⇒ p ∈ ltree_paths (BTe X M)

The extra tpm_rel occurred in previous intermediate results (mentioned in previous PR) is now merged into ISUB by the following new lemma about tpm and ISUB (thus does not show up at all in the above final lemma):

[tpm_ISUB_exists] (termTheory)
⊢ ∀pi M. ∃ss. tpm pi M = M ISUB ss

[1] Barendregt, H.P.: The lambda calculus, its syntax and semantics.
College Publications, London (1984).

@mn200 mn200 merged commit dd274cc into HOL-Theorem-Prover:develop Mar 21, 2024
2 checks passed
@mn200
Copy link
Member

mn200 commented Mar 21, 2024

Thanks!

@binghe binghe deleted the Boehm_out_lemma branch March 22, 2024 01:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants