author | Christian Urban <urbanc@in.tum.de> |
Tue, 30 Jul 2019 10:58:47 +0100 | |
changeset 581 | 9df996a3ad6e |
parent 580 | 4d01dc679458 |
child 582 | ae982b0b2ffd |
permissions | -rw-r--r-- |
2 | 1 |
<?xml version="1.0" encoding="utf-8"?> |
2 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
|
3 |
<HEAD> |
|
4 |
<TITLE>Homepage of Christian Urban</TITLE> |
|
463 | 5 |
<BASE HREF="https://nms.kcl.ac.uk/christian.urban/"> |
23 | 6 |
<script type="text/javascript"> |
7 |
||
8 |
var _gaq = _gaq || []; |
|
9 |
_gaq.push(['_setAccount', 'UA-4143458-4']); |
|
10 |
_gaq.push(['_trackPageview']); |
|
11 |
||
12 |
(function() { |
|
13 |
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; |
|
14 |
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; |
|
15 |
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); |
|
16 |
})(); |
|
17 |
||
18 |
</script> |
|
2 | 19 |
</HEAD> |
20 |
||
21 |
<BODY TEXT="#000000" |
|
22 |
BGCOLOR="#4169E1" |
|
23 |
LINK="#0000EF" |
|
548 | 24 |
VLINK="#51188E" |
2 | 25 |
ALINK="#FF0000"> |
26 |
||
27 |
<TABLE WIDTH="100%" |
|
28 |
BGCOLOR="#4169E1" |
|
29 |
BORDER="0" |
|
30 |
FRAME="border" |
|
31 |
CELLPADDING="10" |
|
32 |
CELLSPACING="2" |
|
33 |
RULES="all"> |
|
34 |
||
35 |
<!-- left column --> |
|
36 |
<TR> |
|
37 |
<TD BGCOLOR="#FFFFFF" |
|
38 |
WIDTH="24%" |
|
39 |
VALIGN="TOP" |
|
273
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
40 |
ROWSPAN="9"> |
2 | 41 |
|
42 |
<B>Links</B><BR> |
|
518 | 43 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/index.html">Home</A><BR> |
44 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/publications.html">Publications</A><BR> |
|
45 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/teaching.html">Teaching</A><BR> |
|
46 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/travelling.html">Recent Talks</A><BR> |
|
47 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/Nominal/">Nominal Isabelle</A> |
|
2 | 48 |
<BR> |
49 |
<BR> |
|
50 |
||
51 |
<B>Handy Information</B><BR> |
|
519 | 52 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/logic.html">People in Logic</A><BR> |
53 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/programming.html">Programming Languages</A><BR> |
|
54 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/misc.html">Miscellaneous</A> |
|
2 | 55 |
<BR><BR> |
56 |
||
37 | 57 |
<table border="0"> |
58 |
<tr> |
|
59 |
<td> |
|
519 | 60 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/Nominal/"> |
5 | 61 |
<IMG SRC="nominal-logo.gif" ALT="" style="border-width: 0px;" align="left"></A> |
37 | 62 |
</td> |
63 |
</tr> |
|
64 |
<tr> |
|
65 |
<td> |
|
519 | 66 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/Cookbook/"> |
37 | 67 |
<IMG SRC="Cookbook/logo-documentation.gif" ALT="" style="border-width: 0px;" align="left"></A> |
68 |
</td> |
|
69 |
</tr> |
|
70 |
</table> |
|
2 | 71 |
</TD> |
72 |
||
73 |
||
74 |
||
75 |
<!-- right column --> |
|
76 |
<TD BGCOLOR="#FFFFFF" WIDTH="75%"> |
|
77 |
<A NAME="Home"></A> |
|
78 |
<TABLE> |
|
79 |
<TR> |
|
80 |
<TD WIDTH="75%"> |
|
16 | 81 |
<H1>Christian Urban</H1> |
2 | 82 |
|
83 |
<B>E-mail</B> |
|
22 | 84 |
christian.urban <I>at</I> kcl ac uk<BR> |
2 | 85 |
<BR> |
86 |
||
87 |
<B>Address</B> |
|
466 | 88 |
<A HREF="http://www.kcl.ac.uk/nms/depts/informatics/">Department of Informatics</A>, |
16 | 89 |
<A HREF="http://www.kcl.ac.uk">King's College London</A>, |
475 | 90 |
Bush House, 30 Aldwych, London WC2B 4BG, UK. My office is 7.07 on the 7th floor, North Wing, of the Bush House. |
304
c7346bf702f0
tuned
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
303
diff
changeset
|
91 |
<BR> |
2 | 92 |
|
93 |
</TD> |
|
94 |
<TD align="right" valign="top"> |
|
519 | 95 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/picture-small.jpg"><IMG ALT="" SRC="picture-small.jpg" align="top"></A> |
2 | 96 |
</TD> |
97 |
</TR> |
|
98 |
</TABLE> |
|
99 |
<p> |
|
570 | 100 |
<IMG SRC="new.gif" ALT="" style="" align="left"><A HREF="https://nms.kcl.ac.uk/christian.urban/Cookbook" target="_top">Isabelle Programming Tutorial</A> (draft of a 200-page tutorial on Isabelle programming - updated to |
571 | 101 |
<A HREF="http://isabelle.in.tum.de">Isabelle 2019</A> thanks to Norbert Schirmer)<BR><BR> |
2 | 102 |
</TD> |
103 |
</TR> |
|
104 |
||
105 |
<TR> |
|
106 |
<TD BGCOLOR="#FFFFFF" WIDTH="75%"> |
|
107 |
<B>Current Position</B> |
|
527 | 108 |
Since 2011 I have been a lecturer in the Department of Informatics at King's College London. |
21 | 109 |
This is similar to a position of an assistant professor in other places. In 2011, |
17 | 110 |
I was also offered a lectureship |
111 |
<A HREF="http://www.it.uu.se/" TITLE="Uppsala">here</A>, an associate professorship |
|
425
a907dadec244
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
421
diff
changeset
|
112 |
<A HREF="http://en.itu.dk/" TITLE="ITU, Copenhagen">here</A>, |
21 | 113 |
and full professorships |
517 | 114 |
<A HREF="https://en.wikipedia.org/wiki/University_of_Science_and_Technology_of_China" TITLE="IAS, Suzhou">here</A> and |
115 |
<A HREF="https://en.wikipedia.org/wiki/East_China_Normal_University" TITLE="Shanghai">here</A>. |
|
17 | 116 |
I thank all people involved for their efforts. |
2 | 117 |
<P> |
118 |
||
119 |
<B>Past Positions</B> |
|
17 | 120 |
In April 2006, I was awarded an <A HREF="http://en.wikipedia.org/wiki/Emmy_Noether">Emmy-Noether</A> |
581 | 121 |
<A HREF="https://www.dfg.de/en/research_funding/programmes/individual/emmy_noether/">fellowship</A>, which I held at the <A HREF="http://www.in.tum.de/en.html">TU Munich</A> until |
17 | 122 |
September 2011. |
56 | 123 |
Between September 2008 and February 2009, I was an invited research scientist in |
2 | 124 |
the <A HREF="http://www.cs.princeton.edu/">Department of Computer Science</A> in Princeton. |
125 |
In 2004/05 I was an Alexander-von-Humboldt fellow in Munich and |
|
126 |
from 2000 until 2004 I was awarded a Research Fellowship in Cambridge. Before that |
|
46 | 127 |
I did my PhD in Cambridge funded by two scholarships from the German Academic Exchange |
45 | 128 |
Service (<A HREF="http://www.daad.de/index.html">DAAD</A>). |
2 | 129 |
<P> |
130 |
||
374
cde52ae55d33
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
373
diff
changeset
|
131 |
<B>Skolem Award 2015</B> Together with |
370
51f031dff93a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
369
diff
changeset
|
132 |
<A HREF="http://www.pps.univ-paris-diderot.fr/~tasson/">Christine Tasson</A>, I was awarded a |
466 | 133 |
<A HREF="http://cadeinc.org/Skolem-Award">Thoralf Skolem Award</A>, a ten-year |
527 | 134 |
test-of-time award from CADE. This was for our |
519 | 135 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/Publications/nom-cade-05.ps">paper</A> |
527 | 136 |
on Nominal Techniques in Isabelle/HOL from 2005. The Skolem Award award was given also |
137 |
to Nicolaas de Bruijn, Zohar Manna and |
|
453
0eece9e5e088
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
437
diff
changeset
|
138 |
Nachum Derschowitz, amongst others. |
368
f0db9889b48d
added skolem
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
362
diff
changeset
|
139 |
<P> |
f0db9889b48d
added skolem
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
362
diff
changeset
|
140 |
|
62 | 141 |
<B>Research Interests</B> theorem provers, verification, programming languages, compilers, |
527 | 142 |
algorithms, security, proof theory, type systems, concurrency, lambda calculus, unification, |
2 | 143 |
regular expressions, computability, complexity, functional and logic programming. |
144 |
<P> |
|
145 |
||
378
14209d766caa
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
377
diff
changeset
|
146 |
<B>Teaching</B> I usually enjoy teaching. At King's my students nominated me for the Teaching |
14209d766caa
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
377
diff
changeset
|
147 |
Excellence Award in |
475 | 148 |
2012, 2015, 2016 and 2017, and for the best MSc Project supervisor in 2015. |
382
0b96f6fc0b89
update
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
380
diff
changeset
|
149 |
In 2014 I received both prizes for Best UG Project Supervisor and for Best |
471 | 150 |
MSc Project Supervisor in the <A HREF="http://www.kcl.ac.uk/nms/index.aspx">NMS Faculty</A>.<P> |
376
7bb23233bd3b
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
375
diff
changeset
|
151 |
|
475 | 152 |
|
382
0b96f6fc0b89
update
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
380
diff
changeset
|
153 |
|
2 | 154 |
<B>Conferences</B> |
235
e19069c38c61
updated links
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
208
diff
changeset
|
155 |
UNIF'06 (member of PC), |
2 | 156 |
<A HREF="http://www.cs.mcgill.ca/~bpientka/lfmtp07">LFMTP'07</A> (member of PC), |
507 | 157 |
LFMTP'08 (PC co-chair), |
2 | 158 |
<A HREF="http://www.cis.upenn.edu/~sweirich/wmm/">WMM'08</A> (member of PC), |
159 |
<A HREF="http://www.mat.ufmg.br/lsfa2008/">LSFA'08</A> (invited speaker), |
|
24 | 160 |
<A HREF="http://www.inf.kcl.ac.uk/staff/maribel/TAASN.html">TAASN'09</A> (member of PC), |
2 | 161 |
<A HREF="http://lsfa09.cic.unb.br/">LSFA'09</A> (member of PC), |
519 | 162 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/Nominal/activities/tphols09/idw.html">IDW'09</A> (organiser), |
2 | 163 |
<A HREF="http://www.seas.upenn.edu/~sweirich/wmm/wmm09.html">WMM'09</A> (PC chair), |
519 | 164 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/Nominal/activities/tphols09/">TPHOLs'09</A> (PC co-chair), |
2 | 165 |
<A HREF="http://dream.inf.ed.ac.uk/events/automatheo-2010/">Automatheo'10</A> (member of PC), |
166 |
<A HREF="http://www.floc-conference.org/">ITP'10</A> (member of PC), |
|
469 | 167 |
UNIF'10 (invited speaker), |
2 | 168 |
<A HREF="http://www.cis.upenn.edu/~bcpierce/wmm/">WMM'10</A> (invited speaker), |
519 | 169 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/Nominal/activities/idw10/idw.html">IDW'10</A> (co-organiser), |
235
e19069c38c61
updated links
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
208
diff
changeset
|
170 |
CPP'11 (member of PC), |
2 | 171 |
<A HREF="http://www.rdp2011.uns.ac.rs/rta/">RTA'11</A> (member of PC), |
207
d40cedf90810
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
201
diff
changeset
|
172 |
<A HREF="http://lfmtp11.cs.umn.edu">LFMTP'11</A> (member of PC), |
273
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
173 |
<A HREF="http://www.cs.uwyo.edu/~ruben/itp-2014">ITP'14</A> (member of PC), |
349
4088b75174cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
335
diff
changeset
|
174 |
<A HREF="http://www.cicm-conference.org/2015/cicm.php?event=mkm">MKM'15</A> (member of PC), |
519 | 175 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/itp-2015/">ITP'15</A> (PC co-chair), |
437
6cc39f136c22
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
430
diff
changeset
|
176 |
<A HREF="https://itp2016.inria.fr">ITP'16</A> (member of PC) |
454
62dfe25d6277
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
453
diff
changeset
|
177 |
<A HREF="http://lsfa.cic.unb.br">LSFA'17</A> (member of PC) |
460
01214b7c6131
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
455
diff
changeset
|
178 |
<A HREF="http://itp2017.cic.unb.br">ITP'17</A> (member of PC) |
562 | 179 |
<A HREF="https://itp19.cecs.pdx.edu">ITP'19</A> (member of PC) |
152 | 180 |
<P> |
181 |
||
519 | 182 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/itp-2015/">ITP'15</A> took place in Nanjing organised |
380
68ed5006e16a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
378
diff
changeset
|
183 |
by Xingyuan Zhang and me<BR> |
68ed5006e16a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
378
diff
changeset
|
184 |
<p> |
68ed5006e16a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
378
diff
changeset
|
185 |
|
580 | 186 |
<B>Current PhD</B> Chengsong Tan<BR> |
547 | 187 |
<B>Former PhD</B> Fahad Ausaf (works at ARM in the VHDL compiler team)<BR> |
546 | 188 |
<B>Former RAs</B> Chunhan Wu, <A HREF="http://cl-informatik.uibk.ac.at/users/cek/">Cezary Kaliszyk</A>, |
475 | 189 |
<A HREF="http://dpt-info.u-strasbg.fr/~narboux/">Julien Narboux</A><p> |
190 |
||
568 | 191 |
If I am not teaching or not doing any research, I am sometimes in the lavender |
567 | 192 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/family.jpg">fields</A> of London, or I do |
569 | 193 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/c.jpg">model-shoots</A> far away, or I am |
567 | 194 |
assistant to the resident |
195 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/s1.jpg">chief</A> |
|
196 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/s2.jpg">paleontologist</A>. |
|
2 | 197 |
</TD> |
198 |
</TR> |
|
199 |
||
200 |
<TR> |
|
201 |
<TD BGCOLOR="#FFFFFF" WIDTH="75%"> |
|
202 |
<B>Nominal Isabelle</B> |
|
203 |
I currently work on Nominal |
|
200
ef7bedc969d3
tuned
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
199
diff
changeset
|
204 |
<A HREF="http://isabelle.in.tum.de">Isabelle</A> 2. This is joint work with |
2 | 205 |
<A HREF="http://wwwbroy.in.tum.de/~berghofe/">Dr Stefan Berghofer</A>, |
466 | 206 |
<A HREF="http://sketis.net/">Dr Markus Wenzel</A>, |
184
b9e6ac16583d
added Tjark
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
176
diff
changeset
|
207 |
<A HREF="http://cl-informatik.uibk.ac.at/users/cek/">Dr Cezary Kaliszyk</A>, |
b9e6ac16583d
added Tjark
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
176
diff
changeset
|
208 |
<A HREF="http://user.it.uu.se/~tjawe125/">Dr Tjark Weber</A> and |
2 | 209 |
the Isabelle-team in Munich. |
210 |
Many of the theoretical ideas originate from the nominal logic project - a wonderful project headed |
|
211 |
by <A HREF="http://www.cl.cam.ac.uk/~amp12/">Prof. Andrew Pitts</A>. |
|
212 |
The aim of my work is to make formal reasoning involving binders as simple as |
|
213 |
on paper and the hope is to lure |
|
214 |
<A HREF="http://alliance.seas.upenn.edu/~plclub/cgi-bin/poplmark/index.php?title=The_POPLmark_Challenge#Vision">masses</A> to automated |
|
215 |
theorem proving. My funding for this work was provided in 2004 and 2005 by a research |
|
216 |
fellowship from the |
|
217 |
<A HREF="http://en.wikipedia.org/wiki/Alexander_von_Humboldt">Alexander-von-Humboldt</A> |
|
218 |
<A HREF="http://www.humboldt-foundation.de/web/home.html">foundation</A>. During this time I was a visitor in the group of |
|
219 |
<A HREF="http://www.mathematik.uni-muenchen.de/~schwicht/">Prof. Helmut Schwichtenberg</A>. |
|
220 |
Since 2006 this work is supported by an |
|
221 |
<A HREF="http://en.wikipedia.org/wiki/Emmy_Noether">Emmy-Noether</A> |
|
222 |
<A HREF="http://www.dfg.de/en/research_funding/programmes/individual/emmy_noether/in_brief/index.html">fellowship</A>. |
|
519 | 223 |
There is a <A HREF="https://nms.kcl.ac.uk/christian.urban/Nominal/">webpage</A> and a |
2 | 224 |
<A HREF="https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/nominal-isabelle">mailing list</A> |
225 |
about Nominal Isabelle. It also includes a list of projects that use Nominal Isabelle. |
|
374
cde52ae55d33
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
373
diff
changeset
|
226 |
Users of Nominal Isabelle had their papers appearing at LICS, POPL, FOSSACS, SOS, TPHOLs, CPP, SEFM, |
375
2ad6b0ef256c
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
374
diff
changeset
|
227 |
the Haskell Symposium and |
373
7c7add769d8e
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
372
diff
changeset
|
228 |
in the Journal of Automated Reasoning. |
2 | 229 |
</TD> |
230 |
</TR> |
|
231 |
||
232 |
<TR> |
|
233 |
<TD BGCOLOR="#FFFFFF" WIDTH="75%"> |
|
234 |
<B>Myhill-Nerode and Regular Expressions</B> |
|
63 | 235 |
Out of frustration of having to teach reasoning in theorem provers with worn-out examples like |
2 | 236 |
fib and even/odd, we implemented a large part of regular language theory in Isabelle/HOL. |
237 |
This <A HREF="http://afp.sourceforge.net/devel-entries/Myhill-Nerode.shtml">implementation</A> |
|
238 |
gives rise to much more interesting examples, as shown |
|
99 | 239 |
<A HREF="http://www.cs.cmu.edu/~rwh/papers/regexp/jfp.pdf">here</A> and |
2 | 240 |
<A HREF="http://ropas.snu.ac.kr/~kwang/paper/06-jfp-yi.pdf">here</A>. It turns out that |
241 |
formalisations of automata theory are a huge |
|
242 |
<A HREF="https://lists.cam.ac.uk/pipermail/cl-isabelle-users/2005-September/msg00012.html">pain</A> |
|
37 | 243 |
in theorem provers, especially in those that are based on HOL. |
2 | 244 |
We therefore went against the |
235
e19069c38c61
updated links
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
208
diff
changeset
|
245 |
<A HREF="http://www.cs.cornell.edu/~kozen/papers/papers_by_year.htm#K97a">mainstream</A> |
2 | 246 |
and used in our formalisation regular expressions exclusively, |
247 |
because they are much more convenient for formal reasoning. The results we |
|
248 |
formalised include: the Myhill-Nerode theorem, the closure of regular languages |
|
249 |
under complementation, finiteness of derivatives of regular expressions and a surprising |
|
250 |
result about Subseq, which according to |
|
251 |
this |
|
252 |
<A HREF="http://blog.computationalcomplexity.org/2006/01/theorem-that-should-be-better-known.html">blog</A> |
|
301
1d95918391c8
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
300
diff
changeset
|
253 |
should be better known. We also answered a |
302
25470d6b220a
tuned
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
301
diff
changeset
|
254 |
<A HREF="http://blog.computationalcomplexity.org/2013/02/proving-dfa-langs-closed-under-concat.html">question</A> from the same blog about |
301
1d95918391c8
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
300
diff
changeset
|
255 |
"proving Reg-exp-langs [being] closed under complementation without using equiv to DFA's"....yes we can! |
1d95918391c8
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
300
diff
changeset
|
256 |
This is joint work with Prof. Xingyuan |
2 | 257 |
Zhang and his student Chunhan Wu from the |
258 |
<A HREF="http://www.ust.com.cn/">PLA University of Science and Technology</A> in Nanjing. |
|
259 |
My funding for this work came from the |
|
260 |
<A HREF="http://www.sinogermanscience.org.cn/">Chinese-German Research Centre</A>. |
|
261 |
</TD> |
|
262 |
</TR> |
|
263 |
||
273
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
264 |
<!-- |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
265 |
<TR> |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
266 |
<TD BGCOLOR="#FFFFFF" WIDTH="75%"> |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
267 |
<B>Priority Inheritance</B> |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
268 |
In real-time operating systems with processes, resource locking and |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
269 |
priority scheduling, one faces the problem of indefinite |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
270 |
<A HREF="http://en.wikipedia.org/wiki/Priority_inversion">priority inversion</A> (processes |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
271 |
with lower priority block processes with higher priority). If you do not prevent this problem, |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
272 |
then processes can behave quite erratically, as <A HREF="http://www.nasa.gov">NASA</A> found out the |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
273 |
<A HREF="http://catless.ncl.ac.uk/Risks/19.54.html#subj6">hard</A> way with their |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
274 |
<A HREF="http://www.nasa.gov/mission_pages/mars-pathfinder/index.html">Mars Pathfinder mission</A>. |
476 | 275 |
The priority inheritance protocol is a widely used scheduling algorithm that prevents |
273
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
276 |
priority inversion. However, the <A HREF="http://dx.doi.org/10.1109/12.57058">original paper</A> |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
277 |
describing this algorithm contains an incorrect algorithm and a bogus correctness proof |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
278 |
(this seems to be the only "proof" about priority inheritance in the literature). |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
279 |
|
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
280 |
We formalised the priority inheritance protocol, including a generalisation |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
281 |
of the original work. |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
282 |
|
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
283 |
using the inductive method we learned from |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
284 |
<A HREF="https://www.cl.cam.ac.uk/~lp15/">Prof. Larry Paulson</A>. |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
285 |
While the problem with the original algorithm was already known, the incorrect |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
286 |
specification seems to be still in use |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
287 |
|
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
288 |
<A HREF="http://mcs.une.edu.au/%7Eiam/Data/threads/node15.html">here</A> |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
289 |
<A HREF="http://ems2.be/Portals/6/course_docs/OS_pathfinder_failure.ppt"> |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
290 |
|
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
291 |
This is joint work with Prof. Xingyuan Zhang and his student Chunhan Wu from the |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
292 |
<A HREF="http://www.ust.com.cn/">PLA University of Science and Technology</A> in Nanjing. |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
293 |
</TD> |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
294 |
</TR> |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
295 |
--> |
0b3d8e2bec9e
added
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
235
diff
changeset
|
296 |
|
2 | 297 |
<TR> |
298 |
<TD BGCOLOR="#FFFFFF" WIDTH="75%"> |
|
299 |
<B>Nominal Unification and Alpha-Prolog</B> |
|
519 | 300 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/Unification">Nominal unification</A> is one outcome of |
2 | 301 |
my involvement in the nominal logic project in Cambridge. Another is the logic programming language |
302 |
alpha-Prolog (joint work with <A HREF="http://homepages.inf.ed.ac.uk/jcheney/">Dr James Cheney</A>), |
|
303 |
which uses nominal unification - click for details |
|
304 |
<A HREF="http://homepages.inf.ed.ac.uk/jcheney/programs/aprolog/">here</A>. |
|
305 |
The nominal unification algorithm has been |
|
519 | 306 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/Unification">formally verified</A> in Isabelle. This |
2 | 307 |
was possible since this unification algorithm is formulated in a simple first-order language |
308 |
(unlike other algorithms for higher-order unification). |
|
466 | 309 |
<A HREF="https://nms.kcl.ac.uk/maribel.fernandez/">Prof. Maribel Fernandez</A> and her student |
2 | 310 |
improved the nominal unification algorithm to be quadratic. |
430
9dae6e101cde
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
428
diff
changeset
|
311 |
<A HREF="http://www.cs.indiana.edu/~dfried/">Prof. Daniel Friedman</A> and his group use nominal |
9dae6e101cde
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
428
diff
changeset
|
312 |
unification in their alpha-Kanren system implemented in Scheme. This work has also found its |
9dae6e101cde
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
428
diff
changeset
|
313 |
way into <A HREF="http://clojure.org">Clojure</A> as the <A HREF="https://github.com/clojure/core.logic/wiki/core.logic.nominal">core.logic.nominal</A> package. |
2 | 314 |
My funding for this work was provided through a research fellowship from |
315 |
<A HREF="http://www.corpus.cam.ac.uk">Corpus Christi College</A>, Cambridge. |
|
316 |
</TD> |
|
317 |
</TR> |
|
318 |
||
319 |
<TR> |
|
320 |
<TD BGCOLOR="#FFFFFF" WIDTH="75%"> |
|
321 |
<B>Classical Logic</B> |
|
322 |
I was Ph.D. student in the University of Cambridge |
|
323 |
<A HREF="http://www.cl.cam.ac.uk">Computer Laboratory</A> |
|
324 |
and for three years |
|
325 |
called Gonville and Caius College my home. I was very lucky to have |
|
362 | 326 |
<A HREF="https://labs.oracle.com/pls/apex/f?p=labs:bio:0:2044">Dr Gavin Bierman</A> |
2 | 327 |
as supervisor. My research in Cambridge was also very much influenced by |
328 |
<A HREF="http://www.dpmms.cam.ac.uk/~martin/">Prof. Martin Hyland</A>. |
|
329 |
Some details on my thesis "Classical Logic and Computation" are |
|
519 | 330 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/PhD/index.html">elsewhere</A>, including |
331 |
a <A HREF="https://nms.kcl.ac.uk/christian.urban/Cut/cutapplet.html">Java Applet</A> that |
|
2 | 332 |
'visualises' some of the results from the thesis. I completed the writing of |
333 |
the thesis in <A HREF="http://iml.univ-mrs.fr/ldp/">Marseille</A> in the group of |
|
334 |
<A HREF="http://iml.univ-mrs.fr/~girard/">Prof. Jean-Yves Girard</A>. My study in |
|
335 |
Cambridge was funded by two <A HREF="http://www.daad.de/index.html">scholarships</a> |
|
336 |
from the German government; my year in Marseille by a TMR-fellowship from the EU. |
|
337 |
My PhD was also one starting point for the EPSRC Project on the Semantics of Classical |
|
64 | 338 |
Proofs. The strong normalisation result in the PhD has been used in 2007 by |
2 | 339 |
<A HREF="http://www.loria.fr/~ckirchne/hot.html">Prof. Claude Kirchner</A> and his |
66 | 340 |
students for proving consistency of their superdeduction system lemuridae. |
2 | 341 |
</TD> |
342 |
</TR> |
|
343 |
||
344 |
||
345 |
||
346 |
<TR> |
|
347 |
<TD BGCOLOR="#FFFFFF" WIDTH="75%"> |
|
348 |
<B>Forum</B> |
|
349 |
I implemented Forum, a programming language based on classical linear logic, |
|
350 |
as my M.Phil. thesis. This was joint work with |
|
469 | 351 |
<A HREF="https://rd.host.cs.st-andrews.ac.uk">Dr Roy Dyckhoff</A>. |
2 | 352 |
Details can be found |
469 | 353 |
<A HREF="https://rd.host.cs.st-andrews.ac.uk/logic/nonmac/">here</A> and |
2 | 354 |
<A HREF="http://www.lix.polytechnique.fr/Labo/Dale.Miller/forum/">here</A>. During my |
355 |
M.Phil study I spent one month in Philadelphia invited by |
|
356 |
<A HREF="http://www.lix.polytechnique.fr/~dale/">Prof. Dale Miller</A>. |
|
357 |
</TD> |
|
358 |
</TR> |
|
359 |
||
360 |
<TR> |
|
361 |
<TD BGCOLOR="#FFFFFF" WIDTH="75%"> |
|
362 |
<B>G4ip</B> An implementation of G4ip using the imperative language Pizza can be found |
|
519 | 363 |
<A HREF="https://nms.kcl.ac.uk/christian.urban/Prover/index.html">here</A>. |
67 | 364 |
<A HREF="http://pizzacompiler.sourceforge.net">Pizza</A>, written around 1996, is a conservative |
69 | 365 |
extension of Java and a precursor of Scala. My implementation illustrates the technique of |
70 | 366 |
success continuations in proof search. |
2 | 367 |
</TD> |
368 |
</TR> |
|
369 |
||
370 |
||
371 |
</TABLE> |
|
199
b3b67c7cbb8b
changed
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
196
diff
changeset
|
372 |
<P> |
507 | 373 |
Time-stamp: <- 2017-09-26 19:52:51 by Christian Urban> |
503 | 374 |
<a href="https://validator.w3.org/check/referer">[Validate this page.]</a> |
2 | 375 |
</BODY> |
376 |
</HTML> |