Computer-Supported Modeling and Reasoning - Exercises

Number Date Additional Files Model Solution
1 28.10.2005
2 04.11.2005
3 11.11.2005 ONE_AXIOM.thy, ONE_RULE_fragment.thy
4 18.11.2005 NSet.thy, NSet.ML, RED.thy, CONV.thy, CNUM.thy
5 25.11.2005 STT.thy, Encode_fragment.thy
6 02.12.2005
7 09.12.2005
8 16.12.2005
9 23.12.2005 HOL_BASIC.thy, HOL_BASIC.ML
10 13.01.2006
11 20.01.2006 FinSet.thy
12 27.01.2006
13 03.02.2006
14 10.02.2006
15 17.02.2006


Submit your Isabelle solutions to Zeno Gantner: ganter (at) informatik.uni-freiburg.de
You can hand in the paper solutions at the excercise session on Friday.

Configuring your system for Isabelle

Open a shell and type setup isabelle in it. This is a shellscript that will modify your path so that all files related to Isabelle will be found. In future sessions, this command should be invoked automatically. For this purpose, add the following line to your shell configuration file (called .cshrc if your shell is the c-shell or tc-shell):
setup isabelle
You will always run Isabelle by starting xemacs. Before starting xemacs, add the following line to the init.el file in your .xemacs directory:
(load-file "/usr/local/share/provers/proofgeneral/generic/proof-site.el")
This will instruct xemacs to use ProofGeneral, which is a sophisticated specialized interface providing many functionalities for running Isabelle.
It is important that you start xemacs from the shell (and not using, say, pop-up menus of your window manager). For the first week's exercises, create a working directory and type xemacs ex1.ML. The file ex1.ML will be your first proof script, that is, a file containing Isabelle proofs. Now customize xemacs using the rich menus provided:
  • Multiple Windows: Isabelle will use several xemacs subwindows (simply windows in emacs jargon). You may choose if you want these displayed all in one window (called frame in emacs jargon) split into several parts or as several windows. This is done by (un)ticking the box "Proof-General:Options:Display:Multiple Windows".
  • X-Symbol: For a nice rendering of mathematical symbols, xemacs uses the X-symbol package. To enable it, tick the box "Proof-General:Options:X-Symbol".
  • Electric terminator: This will save you from having to type the return key to fire proof commands. Proceed in analogy to X-Symbol
  • Fly Past Comments: This will ignore comments when processing a proof step by step. Proceed in analogy to X-Symbol
  • Choosing the logic: We will use the logic FOL. Go to "Proof-General:Advanced:Customize:Isabelle:Chosen Logic". This will open a new buffer. Set the logic to "FOL" in this buffer and click "Save".
  • You should now select "Proof-General:Options:Save Options"

The course is now finished.