faq
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| faq [2012/04/13 15:28] – [FAQ - Ask Questions] paddy | faq [2013/03/01 10:12] (current) – [FAQ - Ask Questions] 124.207.188.66 | ||
|---|---|---|---|
| Line 8: | Line 8: | ||
| Also, check out the [[http:// | Also, check out the [[http:// | ||
| + | |||
| + | Dear all proof lovers: | ||
| + | I am really new to Isabelle. Recently I hope to learn HOL and try to use automatic therom prover. So I download the Isabelle2013. Now I hope to use Isabelle/ | ||
| + | Here, I am learning the simple example, which is in appendix. Am I right? | ||
| + | Thanks very much. | ||
| + | |||
| + | Appendix: | ||
| + | |||
| + | header {* Finite sequences *} | ||
| + | |||
| + | theory Seq | ||
| + | imports Main | ||
| + | begin | ||
| + | |||
| + | datatype 'a seq = Empty | Seq 'a "' | ||
| + | |||
| + | fun conc :: "' | ||
| + | where | ||
| + | "conc Empty ys = ys" | ||
| + | | "conc (Seq x xs) ys = Seq x (conc xs ys)" | ||
| + | |||
| + | fun reverse :: "' | ||
| + | where | ||
| + | " | ||
| + | | " | ||
| + | |||
| + | lemma conc_empty: "conc xs Empty = xs" | ||
| + | by (induct xs) simp_all | ||
| + | |||
| + | lemma conc_assoc: "conc (conc xs ys) zs = conc xs (conc ys zs)" | ||
| + | by (induct xs) simp_all | ||
| + | |||
| + | lemma reverse_conc: | ||
| + | by (induct xs) (simp_all add: conc_empty conc_assoc) | ||
| + | |||
| + | lemma reverse_reverse: | ||
| + | by (induct xs) (simp_all add: reverse_conc) | ||
| + | |||
| + | end | ||
| + | |||
| ===== Syntax ===== | ===== Syntax ===== | ||
| Line 202: | Line 242: | ||
| :!: There are several levels to this question: | :!: There are several levels to this question: | ||
| - | - First, the latter is a by itself a HOL formula, while the former contains HOL formulas, but is more considered a rule. | + | - First, the latter is by itself a HOL formula, while the former contains HOL formulas, but is more considered a rule. |
| - The former says that $G$ can be proven // | - The former says that $G$ can be proven // | ||
| - Maybe the main practical difference: the former is nicely applicable as a rule, where the latter is nearly useless. | - Maybe the main practical difference: the former is nicely applicable as a rule, where the latter is nearly useless. | ||
| Line 315: | Line 355: | ||
| - This case does not apply, but still: if we did not have the axiom of infinity, we would have a weaker HOL system, maybe, but still HOL (cf lecture). | - This case does not apply, but still: if we did not have the axiom of infinity, we would have a weaker HOL system, maybe, but still HOL (cf lecture). | ||
| - | ==== Programming Language Semantics ==== | + | |
| - | :?: How can we define the semantics of HOL Syntax (Functional Application (T T) and lambda abstraction) using Operational & Denotational semantics? | + | |
faq.1334323724.txt.gz · Last modified: by paddy
