41 </small> |
41 </small> |
42 </P> |
42 </P> |
43 </div> |
43 </div> |
44 |
44 |
45 |
45 |
46 <H1>Our Vision</H1> |
46 <H1>Users of Nominal Isabelle</H1> |
47 |
47 |
48 <P> |
|
49 <IMG SRC="new.gif" ALT="" style="" align="left"> |
|
50 <I>We are working on a major overhaul of Nominal Isabelle. The |
|
51 latest bundles of Nominal2 are |
|
52 <A HREF="http://nms.kcl.ac.uk/christian.urban/Nominal/download.html">here</A>. |
|
53 </I></P> |
|
54 |
|
55 |
|
56 <P> |
|
57 To root out bugs, every programming language should be designed with the help |
|
58 of a theorem prover, and every compiler should be verified. With our work we |
|
59 aim to provide all proving technologies necessary for reasoning |
|
60 <B>conveniently</B> about programming languages (for example the <A |
|
61 HREF="http://en.wikipedia.org/wiki/Lambda_calculus" target="_top">lambda |
|
62 calculus</A>) and compilers. For us, formal proofs should be as easy to perform as informal |
|
63 "pencil-and-paper" proofs - at least the overhead of formal proofs should not |
|
64 prevent any formalisation. Many ideas for our work come from the nominal |
|
65 logic work by <A HREF="http://www.cl.cam.ac.uk/~amp12/" target="_top">Andrew |
|
66 Pitts</A>. Our theoretical results about nominal theories enabled us to |
|
67 implement Nominal Isabelle on top of Isabelle/HOL. |
|
68 </P> |
|
69 |
48 |
70 <P> |
49 <P> |
71 If you want to see a simple example illustrating our results on Nominal Isabelle click |
50 If you want to see a simple example illustrating our results on Nominal Isabelle click |
72 <A HREF="example.html">here</A>. For more interesting results, we already |
51 <A HREF="example.html">here</A>. For more interesting results, we already |
73 completed formalisations of Church-Rosser and strong-normalisation proofs as |
52 completed formalisations of Church-Rosser and strong-normalisation proofs as |
150 of the lambda calculus using Nominal Isabelle 2. This work appeared at CPP'11. |
129 of the lambda calculus using Nominal Isabelle 2. This work appeared at CPP'11. |
151 |
130 |
152 <li> |
131 <li> |
153 <A HREF="http://www.joachim-breitner.de/blog/" target="_top">Joachim Breitner</A> |
132 <A HREF="http://www.joachim-breitner.de/blog/" target="_top">Joachim Breitner</A> |
154 used Nominal2 for formalising Launchbury's natural semantics for lazy evaluation. This is part |
133 used Nominal2 for formalising Launchbury's natural semantics for lazy evaluation. This is part |
155 of the <A HREF="http://afp.sourceforge.net/entries/Launchbury.shtml">AFP</A>. |
134 of the <A HREF="http://afp.sourceforge.net/entries/Launchbury.shtml">AFP</A>. (Archive of Formal Proofs) |
156 |
135 |
157 <li> |
136 <li> |
158 <A HREF="http://www.cl.cam.ac.uk/~lp15/" target="_top">Larry Paulson</A> |
137 <A HREF="http://www.cl.cam.ac.uk/~lp15/" target="_top">Larry Paulson</A> |
159 formalised Gödel's Incompletness Theorems using Nominal2. This work |
138 formalised Gödel's Incompletness Theorems using Nominal2. This work |
160 appeared in the Journal of Automated Reasoning in 2015. |
139 appeared in the Journal of Automated Reasoning in 2015. |
165 This work appeared at the |
144 This work appeared at the |
166 <A HREF="https://www.haskell.org/haskell-symposium/2015/">Haskell Symposium 2015</A>. |
145 <A HREF="https://www.haskell.org/haskell-symposium/2015/">Haskell Symposium 2015</A>. |
167 </ul> |
146 </ul> |
168 </P> |
147 </P> |
169 |
148 |
170 <P> |
|
171 Note, however, that Nominal Isabelle is still an ongoing research |
|
172 project, which needs both theoretical and implementation work. You are |
|
173 encouraged to subscribe to the (moderated) |
|
174 <a href="https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/nominal-isabelle" target="_top"> |
|
175 mailing list</a> to hear about our progress and to give |
|
176 us feedback.</P> |
|
177 |
|
178 <P> |
|
179 We have recently re-implemented the underlying nominal theory [7] and also have |
|
180 a good proposal for how to deal with general binding structures in Nominal Isabelle [8]. |
|
181 </P><BR> |
|
182 |
149 |
183 <B>References</B><BR><BR> |
150 <B>References</B><BR><BR> |
184 <CENTER> |
151 <CENTER> |
185 <TABLE> |
152 <TABLE> |
186 <TR><TD WIDTH="7%" VALIGN=Top>[1]</TD> |
153 <TR><TD WIDTH="7%" VALIGN=Top>[1]</TD> |