User Tools

Site Tools


official:goals

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
official:goals [2011/07/20 11:22]
paddy [Sheet 9]
official:goals [2012/07/06 18:05]
paddy
Line 12: Line 12:
   * Make first steps with the tool/editor Isabelle/​HOL/​Emacs.   * Make first steps with the tool/editor Isabelle/​HOL/​Emacs.
  
 +===== Sheet 2 =====  ​
 +   
 +==== Exercise 1 ====   
  
-===== Sheet 2 =====+  * Be able to write basic Isabelle/​HOL functions and recursive functions. ​   
 +  * Get familiar with functional programs, so you can at least //read// more complex programs. ​   
 +    
 +==== Exercise ​2 ====   ​
  
-==== Exercise 1 ==== +  ​* Be able to specify properties of functions in Isabelle/​HOL. ​  
- +  * Be able to prove many of these properties with a simple proof pattern. ​  ​ 
-  * Be able to write basic Isabelle/​HOL functions and recursive functions. +  * First steps in finding missing lemmas from proofs which are not working yet.   ​ 
-  * Get familiar with functional programs, so you can at least read more complex programs. +   ​ 
- +==== Exercise 3 ====   ​
-==== Exercise 2 ==== +
- +
-  ​* Be able to specify properties of functions in Isabelle/​HOL. +
-  * Be able to prove many of these properties with a simple proof pattern. +
-  * First steps in finding missing lemmas from proofs which are not working yet. +
- +
-==== Exercise 3 ====+
  
-  * More advanced example.+  * More advanced example. ​  ​
   * Be able to define the algorithm and specify its correctness.   * Be able to define the algorithm and specify its correctness.
- +  * Doing the proof at this point can be challenging. 
 +    * It highly depends on your definitions and your knowledge of the proof system. 
 +    * You should be able to do it at the end of the semester the latest.
 ===== Sheet 3 ===== ===== Sheet 3 =====
  
 ==== Exercise 1 ==== ==== Exercise 1 ====
  
-  * Basic theory questions you should be able to answer.+  * Be able to define datatypes in Isabelle/​HOL. 
 +  * Be able to define primitive recursive functions on datatypes. 
 +  * Be able to specify properties on such functions. 
 +  * Be able to prove many of these properties with a simple proof pattern. 
 +  * Next steps in finding missing lemmas from proofs which are not working yet.
  
 ==== Exercise 2 ==== ==== Exercise 2 ====
  
   * Get used to the idea of using existing types to define new ones.   * Get used to the idea of using existing types to define new ones.
-  * The actual definitions are very easy once you get the idea.+  * Get used to the idea that sets and predicates are pretty much equivalent.
  
 ==== Exercise 3 ==== ==== Exercise 3 ====
  
-  * Be able to define datatypes ​in Isabelle/​HOL. +  * More exercise ​in writing, understanding and modifying functional programs and datatypes. 
-  * Be able to define primitive recursive functions on datatypes. +  * Get familiar ​with proofs, proof commands and proof states in very simple ​setting
-  * Be able to specify properties on such functions. +  * In general, understand how provers work and how one could implement one.
-  * Be able to prove many of these properties ​with a simple ​proof pattern+
-  * Next steps in finding missing lemmas from proofs which are not working yet.+
  
-==== Exercise 4 ==== 
- 
-  * More exercise in writing functional programs and using datatypes. 
-  * Can be used to check the own skills in basic functional programming. 
-  * Get familiar with proofs, proof commands and proof states in a very simple setting. 
  
 ===== Sheet 4 ===== ===== Sheet 4 =====
  
-==== Exercise ​1 ====+  * Basic theory questions you should be able to answer about the HOL core, universes, models, conservative extensions, etc. 
 +  * Exercise ​2 (d/e) More and more advanced questions where you can get more familiar with using Isabelle/​HOL,​ proofs, finding and applying theorems, etc.
  
-  * (a/b/c) Basic theory questions you should be able to answer. +===== Sheet 5 =====
-  * (d/e) More and more advanced questions where you can get more familiar with using Isabelle/​HOL,​ proofs, finding and applying theorems, etc.+
  
-==== Exercise ​====+ 
 +==== Exercise ​====
  
   * Be able to apply methods to rules and do proofs.   * Be able to apply methods to rules and do proofs.
Line 71: Line 69:
   * Be able to do arbitrary proofs on propositional and predicate logic theorems.   * Be able to do arbitrary proofs on propositional and predicate logic theorems.
  
-===== Sheet 5 =====+==== Exercise 2 ====
  
   * Get familiar with designing and defining both syntax and semantics of languages.   * Get familiar with designing and defining both syntax and semantics of languages.
Line 78: Line 76:
 ===== Sheet 6 ===== ===== Sheet 6 =====
  
-  ​* Understand and proof properties on paper about lattices and fixpoints. +  * First steps in finding needed theorems from the library, using the Find Theorems function
-  * Be able to specify inductive sets both on paper and in Isabelle/​HOL. +  * First steps in using different induction schemes.
-  * Be able to do simple proofs on elements of inductive sets in Isabelle/​HOL. +
-  ​* First steps in finding needed theorems from the library, using the //Find Theorems// function.+
   * First case study about specifying models, properties and proving their consistency.   * First case study about specifying models, properties and proving their consistency.
  
Line 90: Line 86:
   * Be able to specify properties for such models.   * Be able to specify properties for such models.
   * Be able to prove those properties with regard to the models.   * Be able to prove those properties with regard to the models.
 +
 +  * Understand and proof properties on paper about lattices and fixpoints.
 +  * Be able to specify inductive sets on paper and understand their semantics.
  
 ===== Sheet 8 ===== ===== Sheet 8 =====
Line 105: Line 104:
   * Be able to prove properties about language semantics.   * Be able to prove properties about language semantics.
   * Be able to do induction over inductive sets / predicates.   * Be able to do induction over inductive sets / predicates.
- 
-===== Sheet 10 ===== 
- 
-  * Be able to model a transition system from a given description. 
-  * Be able to formalize properties of a system given by an informal explanation. 
-  * Get to know different approaches to model systems and see how they influence property specifications and proofs. 
  
official/goals.txt · Last modified: 2012/07/06 18:08 by paddy