exam
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| exam [2011/05/27 14:19] – [Core HOL] paddy | exam [2011/08/02 15:29] (current) – [Core HOL] 188.107.127.174 | ||
|---|---|---|---|
| Line 7: | Line 7: | ||
| Please try to maintain categories of useful size, so each gets its own edit button. | Please try to maintain categories of useful size, so each gets its own edit button. | ||
| + | If there are any answers on this page, they are given by **students**; | ||
| ===== General ===== | ===== General ===== | ||
| :?: Please give a short overview over the lecture. | :?: Please give a short overview over the lecture. | ||
| + | * Intorduction: | ||
| + | * Functional programming and specification (ML & Isabelle/ | ||
| + | * HOL: language and semantic aspects (e.g. types, terms, theory, cons. ext., ...) | ||
| + | * Proofs in HOL | ||
| + | * Specific things in HOL: sets, functions, relations, and fixpoints | ||
| + | * Verifying functions | ||
| + | * Inductively defined sets | ||
| + | * Specifiaction of PL semantics (operational-, | ||
| + | * --> programm verification and programm logic (Hoare Logic) | ||
| + | :?: What is Verification? | ||
| + | * argument for building the system right (NOT building the right system --> validation) | ||
| + | |||
| + | :?: What is Specification? | ||
| + | * defining all possible behaviours of the specified system | ||
| + | |||
| + | :?: What is the difference between model- and property-oriented specifications? | ||
| + | * Model-oriented is based on well-defined mathematical objects like sets and functions, which are used to construct a representation of the system state, as well as the operations on these states. Thus, such specifications reason about a transition system. | ||
| + | * Property-oriented is purely declarative. It uses some logic language to express the properties of the functions in the system. | ||
| + | |||
| + | :?: What is a Model? | ||
| ===== Core HOL ===== | ===== Core HOL ===== | ||
| Line 20: | Line 41: | ||
| :?: How are the elements //True// and //False// introduced in HOL? | :?: How are the elements //True// and //False// introduced in HOL? | ||
| - | * Since there should always be an infinite set in **U** whose elements and power sets are also fully contained in **U**, there' | + | * Since there should always be a distinguished |
| + | |||
| + | :?: Why must all functions be total in Isabelle/ | ||
| + | |||
| + | :?: How does the automatic proof of termination work for // | ||
| + | |||
| + | :?: What is the general procedure for proving termination manually in // | ||
| ===== Calculi ===== | ===== Calculi ===== | ||
| :?: Why do we need calculi. | :?: Why do we need calculi. | ||
| + | * Basically, calculi are the tools we use to derive (and prove) theorems. Given a set of valid formulas and a sound calculus, new valid formulas (tautologies) can be derived. As far as I know, the semantic notion of " | ||
| :?: Please explain the following properties: Soundness (Correctness), | :?: Please explain the following properties: Soundness (Correctness), | ||
| + | * A deductive system is sound if all provable formulas are valid. It is complete if all valid formulas are provable. | ||
| + | * Validity is a semantic property ($A \models B$), while provability a syntactic one ($A \vdash B$). So, in other words we have: | ||
| + | * Soundness: $A \vdash B \longrightarrow A \models B$ | ||
| + | * Completeness: | ||
| :?: What are the advantages/ | :?: What are the advantages/ | ||
| + | |||
| + | :?: How can we prove formulas without a calculus? | ||
| + | * Calculi are based purely on syntax. We can always rely on semantic proofs, e.g. truth table or tableaux methods. | ||
exam.1306498769.txt.gz · Last modified: by paddy
