Forward vs. backward proof Consider the following Natural Deduction rule: Rule can be read in two ways: • Backwards: “to prove suffjces to prove ” • Forwards: “if holds then holds” With apply -style proofs we are reasoning backwards Decomposing complex goals into simpler goals Using a backward reading of rules and theorems 1 Γ , φ ⊢ ψ ( ImpI ) Γ ⊢ φ → ψ
Forward vs. backward proof Consider the following Natural Deduction rule: Rule can be read in two ways: With apply -style proofs we are reasoning backwards Decomposing complex goals into simpler goals Using a backward reading of rules and theorems 1 Γ , φ ⊢ ψ ( ImpI ) Γ ⊢ φ → ψ • Backwards: “to prove Γ ⊢ φ → ψ suffjces to prove Γ , φ ⊢ ψ ” • Forwards: “if Γ , φ ⊢ ψ holds then Γ ⊢ φ → ψ holds”
Forward vs. backward proof Consider the following Natural Deduction rule: Rule can be read in two ways: With apply -style proofs we are reasoning backwards Decomposing complex goals into simpler goals Using a backward reading of rules and theorems 1 Γ , φ ⊢ ψ ( ImpI ) Γ ⊢ φ → ψ • Backwards: “to prove Γ ⊢ φ → ψ suffjces to prove Γ , φ ⊢ ψ ” • Forwards: “if Γ , φ ⊢ ψ holds then Γ ⊢ φ → ψ holds”
Meta vs. object-level Consider the same Natural Deduction rule: Recall the forward reading: “if holds then holds” Note there are two different kinds of implication at play here! The implication in the logic we are reasoning about: The implication in our meta-language, informal English: “if-then” Isabelle uses a logic rather than informal English for this purpose The “fat arrow” replaces the English “if-then” in Isabelle 2 Γ , φ ⊢ ψ ( ImpI ) Γ ⊢ φ → ψ
Meta vs. object-level Consider the same Natural Deduction rule: Note there are two different kinds of implication at play here! The implication in the logic we are reasoning about: The implication in our meta-language, informal English: “if-then” Isabelle uses a logic rather than informal English for this purpose The “fat arrow” replaces the English “if-then” in Isabelle 2 Γ , φ ⊢ ψ ( ImpI ) Γ ⊢ φ → ψ Recall the forward reading: “if Γ , φ ⊢ ψ holds then Γ ⊢ φ → ψ holds”
Meta vs. object-level Consider the same Natural Deduction rule: Note there are two different kinds of implication at play here! The implication in our meta-language, informal English: “if-then” Isabelle uses a logic rather than informal English for this purpose The “fat arrow” replaces the English “if-then” in Isabelle 2 Γ , φ ⊢ ψ ( ImpI ) Γ ⊢ φ → ψ Recall the forward reading: “if Γ , φ ⊢ ψ holds then Γ ⊢ φ → ψ holds” The implication in the logic we are reasoning about: φ → ψ
Meta vs. object-level Consider the same Natural Deduction rule: Note there are two different kinds of implication at play here! The implication in our meta-language, informal English: “if-then” Isabelle uses a logic rather than informal English for this purpose 2 Γ , φ ⊢ ψ ( ImpI ) Γ ⊢ φ → ψ Recall the forward reading: “if Γ , φ ⊢ ψ holds then Γ ⊢ φ → ψ holds” The implication in the logic we are reasoning about: φ → ψ The “fat arrow” = ⇒ replaces the English “if-then” in Isabelle
Moreover... holds then when embedded in HOL Thus the Natural Deduction rule above would be rendered as “for-every” in Isabelle ) replaces the English The meta-level universal quantifjer ( holds” : if In the rule: , and , “ For every ...there’s also hidden universal quantifjcation 3 Γ , φ ⊢ ψ ( ImpI ) Γ ⊢ φ → ψ
Moreover... In the rule: ...there’s also hidden universal quantifjcation The meta-level universal quantifjer ( ) replaces the English “for-every” in Isabelle Thus the Natural Deduction rule above would be rendered as when embedded in HOL 3 Γ , φ ⊢ ψ ( ImpI ) Γ ⊢ φ → ψ “ For every Γ , φ , and ψ : if Γ , φ ⊢ ψ holds then Γ ⊢ φ → ψ holds”
Moreover... In the rule: ...there’s also hidden universal quantifjcation “for-every” in Isabelle Thus the Natural Deduction rule above would be rendered as when embedded in HOL 3 Γ , φ ⊢ ψ ( ImpI ) Γ ⊢ φ → ψ “ For every Γ , φ , and ψ : if Γ , φ ⊢ ψ holds then Γ ⊢ φ → ψ holds” The meta-level universal quantifjer ( � ) replaces the English � Γ φ ψ. Γ , φ ⊢ ψ = ⇒ Γ ⊢ φ → ψ
Recommend
More recommend