<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HEAD>
<TITLE>Homepage of Christian Urban</TITLE>
<BASE HREF="http://www.inf.kcl.ac.uk/staff/urbanc/">
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-4143458-4']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</HEAD>
<BODY TEXT="#000000"
BGCOLOR="#4169E1"
LINK="#0000EF"
VLINK="#51188E"
ALINK="#FF0000">
<TABLE WIDTH="100%"
BGCOLOR="#4169E1"
BORDER="0"
FRAME="border"
CELLPADDING="10"
CELLSPACING="2"
RULES="all">
<!-- left column -->
<TR>
<TD BGCOLOR="#FFFFFF"
WIDTH="24%"
VALIGN="TOP"
ROWSPAN="8">
<B>Links</B><BR>
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/index.html">Home</A><BR>
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/publications.html">Publications</A><BR>
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/teaching.html">Teaching</A><BR>
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/travelling.html">Recent Talks</A><BR>
<A HREF="http://isabelle.in.tum.de/nominal/">My Research Group</A>
<BR>
<BR>
<B>Handy Information</B><BR>
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/logic.html">People in Logic</A><BR>
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/programming.html">Programming Languages</A><BR>
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/misc.html">Miscellaneous</A>
<BR><BR>
<table border="0">
<tr>
<td>
<A HREF="http://isabelle.in.tum.de/nominal/">
<IMG SRC="nominal-logo.gif" ALT="" style="border-width: 0px;" align="left"></A>
</td>
</tr>
<tr>
<td>
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/Cookbook/">
<IMG SRC="Cookbook/logo-documentation.gif" ALT="" style="border-width: 0px;" align="left"></A>
</td>
</tr>
</table>
</TD>
<!-- right column -->
<TD BGCOLOR="#FFFFFF" WIDTH="75%">
<A NAME="Home"></A>
<TABLE>
<TR>
<TD WIDTH="75%">
<H1>Christian Urban</H1>
<B>E-mail</B>
christian.urban <I>at</I> kcl ac uk<BR>
<BR>
<B>Address</B>
<A HREF="http://www.inf.kcl.ac.uk">Department of Informatics</A>,
<A HREF="http://www.kcl.ac.uk">King's College London</A>,
Strand, London WC2R 2LS, UK. My office is S1.27 on the 1st floor of the Strand Building.
<BR><BR>
<B>Fax</B> +44 20 7848 2851
</TD>
<TD align="right" valign="top">
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/picture-small.jpg"><IMG ALT="" SRC="picture-small.jpg" align="top"></A>
</TD>
</TR>
</TABLE>
<p>
<IMG SRC="new.gif" ALT="" style="" align="left"><A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/Cookbook" target="_top">Isabelle Programming Tutorial</A> (draft of a 200-page tutorial on Isabelle programming)<BR>
</TD>
</TR>
<TR>
<TD BGCOLOR="#FFFFFF" WIDTH="75%">
<B>Current Position</B>
I am a lecturer in the Department of Informatics at King's College London.
This is similar to a position of an assistant professor in other places. In 2011,
I was also offered a lectureship
<A HREF="http://www.it.uu.se/" TITLE="Uppsala">here</A>, an associate professorship
<A HREF="http://www.itu.dk/en/" TITLE="ITU, Copenhagen">here</A>,
and full professorships
<A HREF="http://www.ustcsz.edu.cn/kedweb/" TITLE="IAS, Suzhou">here</A> and
<A HREF="http://www.sei.ecnu.edu.cn/" TITLE="Shanghai">here</A>.
I thank all people involved for their efforts.
<P>
<B>Past Positions</B>
In April 2006, I was awarded an <A HREF="http://en.wikipedia.org/wiki/Emmy_Noether">Emmy-Noether</A>
<A HREF="http://www.dfg.de/en/research_funding/programmes/individual/emmy_noether/in_brief/index.html">fellowship</A>, which I held at the <A HREF="http://www.in.tum.de/en.html">TU Munich</A> until
September 2011.
Between September 2008 and February 2009, I was an invited research scientist in
the <A HREF="http://www.cs.princeton.edu/">Department of Computer Science</A> in Princeton.
In 2004/05 I was an Alexander-von-Humboldt fellow in Munich and
from 2000 until 2004 I was awarded a Research Fellowship in Cambridge. Before that
I did my PhD in Cambridge funded by two scholarships from the German Academic Exchange
Service (<A HREF="http://www.daad.de/index.html">DAAD</A>).
<P>
<B>Research Interests</B> theorem provers, verification, programming languages, compilers,
algorithms, proof theory, type systems, concurrency, lambda calculus, unification,
regular expressions, computability, complexity, functional and logic programming.
<P>
<B>Conferences</B>
<A HREF="http://www.iiia.csic.es/~levy/unif06/">UNIF'06</A> (member of PC),
<A HREF="http://www.cs.mcgill.ca/~bpientka/lfmtp07">LFMTP'07</A> (member of PC),
<A HREF="http://isabelle.in.tum.de/nominal/activities/lfmtp08/">LFMTP'08</A> (PC co-chair),
<A HREF="http://www.cis.upenn.edu/~sweirich/wmm/">WMM'08</A> (member of PC),
<A HREF="http://www.mat.ufmg.br/lsfa2008/">LSFA'08</A> (invited speaker),
<A HREF="http://www.inf.kcl.ac.uk/staff/maribel/TAASN.html">TAASN'09</A> (member of PC),
<A HREF="http://lsfa09.cic.unb.br/">LSFA'09</A> (member of PC),
<A HREF="http://isabelle.in.tum.de/nominal/activities/tphols09/idw.html">IDW'09</A> (organiser),
<A HREF="http://www.seas.upenn.edu/~sweirich/wmm/wmm09.html">WMM'09</A> (PC chair),
<A HREF="https://isabelle.in.tum.de/nominal/activities/tphols09/">TPHOLs'09</A> (PC co-chair),
<A HREF="http://dream.inf.ed.ac.uk/events/automatheo-2010/">Automatheo'10</A> (member of PC),
<A HREF="http://www.floc-conference.org/">ITP'10</A> (member of PC),
<A HREF="http://www.inf.kcl.ac.uk/staff/maribel/UNIF/UNIF.html">UNIF'10</A> (invited speaker),
<A HREF="http://www.cis.upenn.edu/~bcpierce/wmm/">WMM'10</A> (invited speaker),
<A HREF="http://isabelle.in.tum.de/nominal/activities/idw10/idw.html">IDW'10</A> (co-organiser),
<A HREF="http://formes.asia/cpp">CPP'11</A> (member of PC),
<A HREF="http://www.rdp2011.uns.ac.rs/rta/">RTA'11</A> (member of PC),
<A HREF="http://lfmtp11.cs.umn.edu">LFMTP'11</A> (member of PC)
<P>
<B>Current PostDocs</B> Chunhan Wu, Zhenjiang Qian<BR>
</TD>
</TR>
<TR>
<TD BGCOLOR="#FFFFFF" WIDTH="75%">
<B>Nominal Isabelle</B>
I currently work on Nominal
<A HREF="http://isabelle.in.tum.de">Isabelle</A>. This is joint work with
<A HREF="http://wwwbroy.in.tum.de/~berghofe/">Dr Stefan Berghofer</A>,
<A HREF="http://www4.in.tum.de/~wenzelm/">Dr Markus Wenzel</A>,
<A HREF="http://www4.in.tum.de/~kaliszyk/">Dr Cezary Kaliszyk</A> and
the Isabelle-team in Munich.
Many of the theoretical ideas originate from the nominal logic project - a wonderful project headed
by <A HREF="http://www.cl.cam.ac.uk/~amp12/">Prof. Andrew Pitts</A>.
The aim of my work is to make formal reasoning involving binders as simple as
on paper and the hope is to lure
<A HREF="http://alliance.seas.upenn.edu/~plclub/cgi-bin/poplmark/index.php?title=The_POPLmark_Challenge#Vision">masses</A> to automated
theorem proving. My funding for this work was provided in 2004 and 2005 by a research
fellowship from the
<A HREF="http://en.wikipedia.org/wiki/Alexander_von_Humboldt">Alexander-von-Humboldt</A>
<A HREF="http://www.humboldt-foundation.de/web/home.html">foundation</A>. During this time I was a visitor in the group of
<A HREF="http://www.mathematik.uni-muenchen.de/~schwicht/">Prof. Helmut Schwichtenberg</A>.
Since 2006 this work is supported by an
<A HREF="http://en.wikipedia.org/wiki/Emmy_Noether">Emmy-Noether</A>
<A HREF="http://www.dfg.de/en/research_funding/programmes/individual/emmy_noether/in_brief/index.html">fellowship</A>.
There is a <A HREF="http://isabelle.in.tum.de/nominal/">webpage</A> and a
<A HREF="https://mailmanbroy.informatik.tu-muenchen.de/mailman/listinfo/nominal-isabelle">mailing list</A>
about Nominal Isabelle. It also includes a list of projects that use Nominal Isabelle.
Users of Nominal Isabelle had their papers appearing at LICS, POPL, FOSSACS, SOS, TPHOLs and CPP.
</TD>
</TR>
<TR>
<TD BGCOLOR="#FFFFFF" WIDTH="75%">
<B>Myhill-Nerode and Regular Expressions</B>
Out of frustration of having to teach reasoning in theorem provers with worn-out examples like
fib and even/odd, we implemented a large part of regular language theory in Isabelle/HOL.
This <A HREF="http://afp.sourceforge.net/devel-entries/Myhill-Nerode.shtml">implementation</A>
gives rise to much more interesting examples, as shown
<A HREF="http://www.cs.cmu.edu/~rwh/papers/regexp/jfp.pdf">here</A> and
<A HREF="http://ropas.snu.ac.kr/~kwang/paper/06-jfp-yi.pdf">here</A>. It turns out that
formalisations of automata theory are a huge
<A HREF="https://lists.cam.ac.uk/pipermail/cl-isabelle-users/2005-September/msg00012.html">pain</A>
in theorem provers, especially in those that are based on HOL.
We therefore went against the
<A HREF="http://books.google.com/books?id=8lKyxS8_CNoC&pg=PA14&source=gbs_toc_r&cad=4#v=onepage&q&f=false">mainstream</A>
and used in our formalisation regular expressions exclusively,
because they are much more convenient for formal reasoning. The results we
formalised include: the Myhill-Nerode theorem, the closure of regular languages
under complementation, finiteness of derivatives of regular expressions and a surprising
result about Subseq, which according to
this
<A HREF="http://blog.computationalcomplexity.org/2006/01/theorem-that-should-be-better-known.html">blog</A>
should be better known. This is joint work with Prof. Xingyuan
Zhang and his student Chunhan Wu from the
<A HREF="http://www.ust.com.cn/">PLA University of Science and Technology</A> in Nanjing.
My funding for this work came from the
<A HREF="http://www.sinogermanscience.org.cn/">Chinese-German Research Centre</A>.
</TD>
</TR>
<TR>
<TD BGCOLOR="#FFFFFF" WIDTH="75%">
<B>Nominal Unification and Alpha-Prolog</B>
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/Unification">Nominal unification</A> is one outcome of
my involvement in the nominal logic project in Cambridge. Another is the logic programming language
alpha-Prolog (joint work with <A HREF="http://homepages.inf.ed.ac.uk/jcheney/">Dr James Cheney</A>),
which uses nominal unification - click for details
<A HREF="http://homepages.inf.ed.ac.uk/jcheney/programs/aprolog/">here</A>.
The nominal unification algorithm has been
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/Unification">formally verified</A> in Isabelle. This
was possible since this unification algorithm is formulated in a simple first-order language
(unlike other algorithms for higher-order unification).
<A HREF="http://www.cs.indiana.edu/~dfried/">Prof. Daniel Friedman</A> and his group use nominal
unification in their alpha-Kanren system implemented in Scheme.
<A HREF="http://www.inf.kcl.ac.uk/staff/maribel/">Prof. Maribel Fernandez</A> and her student
improved the nominal unification algorithm to be quadratic.
My funding for this work was provided through a research fellowship from
<A HREF="http://www.corpus.cam.ac.uk">Corpus Christi College</A>, Cambridge.
</TD>
</TR>
<TR>
<TD BGCOLOR="#FFFFFF" WIDTH="75%">
<B>Classical Logic</B>
I was Ph.D. student in the University of Cambridge
<A HREF="http://www.cl.cam.ac.uk">Computer Laboratory</A>
and for three years
called Gonville and Caius College my home. I was very lucky to have
<A HREF="http://research.microsoft.com/~gmb/">Dr Gavin Bierman</A>
as supervisor. My research in Cambridge was also very much influenced by
<A HREF="http://www.dpmms.cam.ac.uk/~martin/">Prof. Martin Hyland</A>.
Some details on my thesis "Classical Logic and Computation" are
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/PhD/index.html">elsewhere</A>, including
a <A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/Cut/cutapplet.html">Java Applet</A> that
'visualises' some of the results from the thesis. I completed the writing of
the thesis in <A HREF="http://iml.univ-mrs.fr/ldp/">Marseille</A> in the group of
<A HREF="http://iml.univ-mrs.fr/~girard/">Prof. Jean-Yves Girard</A>. My study in
Cambridge was funded by two <A HREF="http://www.daad.de/index.html">scholarships</a>
from the German government; my year in Marseille by a TMR-fellowship from the EU.
My PhD was also one starting point for the EPSRC Project on the Semantics of Classical
Proofs. The strong normalisation result in the PhD has been used in 2007 by
<A HREF="http://www.loria.fr/~ckirchne/hot.html">Prof. Claude Kirchner</A> and his
students for proving consistency of their superdeduction system lemuridae.
</TD>
</TR>
<TR>
<TD BGCOLOR="#FFFFFF" WIDTH="75%">
<B>Forum</B>
I implemented Forum, a programming language based on classical linear logic,
as my M.Phil. thesis. This was joint work with
<A HREF="http://www.cs.st-andrews.ac.uk/~rd/">Dr Roy Dyckhoff</A>.
Details can be found
<A HREF="http://www.cs.st-andrews.ac.uk/~rd/logic/nonmac/">here</A> and
<A HREF="http://www.lix.polytechnique.fr/Labo/Dale.Miller/forum/">here</A>. During my
M.Phil study I spent one month in Philadelphia invited by
<A HREF="http://www.lix.polytechnique.fr/~dale/">Prof. Dale Miller</A>.
</TD>
</TR>
<TR>
<TD BGCOLOR="#FFFFFF" WIDTH="75%">
<B>G4ip</B> An implementation of G4ip using the imperative language Pizza can be found
<A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/Prover/index.html">here</A>.
<A HREF="http://pizzacompiler.sourceforge.net">Pizza</A>, written around 1996, is a conservative
extension of Java and a precursor of Scala. My implementation illustrates the technique of
success continuations in proof search.
</TD>
</TR>
</TABLE>
<P><!-- Created: Tue Mar 4 00:23:25 GMT 1997 -->
<!-- hhmts start -->
Last modified: Fri Jan 6 18:44:51 GMT 2012
<!-- hhmts end -->
<a href="http://validator.w3.org/check/referer">[Validate this page.]</a>
</BODY>
</HTML>