bsc-projects-14.html
changeset 465 4dac76eb27d9
parent 331 70142c708a91
equal deleted inserted replaced
464:ae516c20c5f1 465:4dac76eb27d9
     1 <?xml version="1.0" encoding="utf-8"?>
     1 <?xml version="1.0" encoding="utf-8"?>
     2 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     2 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     3 <HEAD>
     3 <HEAD>
     4 <TITLE>2014/15 BSc Projects</TITLE>
     4 <TITLE>2014/15 BSc Projects</TITLE>
     5 <BASE HREF="http://www.inf.kcl.ac.uk/staff/urbanc/">
     5 <BASE HREF="http://nms.kcl.ac.uk/christian.urban/">
     6 <script type="text/javascript" src="striper.js"></script>
     6 <script type="text/javascript" src="striper.js"></script>
     7 <link rel="stylesheet" href="nominal.css">
     7 <link rel="stylesheet" href="nominal.css">
     8 <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
     8 <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
     9 </script>
     9 </script>
    10 </HEAD>
    10 </HEAD>
   105   above claim they are even faster than me and can deal with even more features of regular expressions
   105   above claim they are even faster than me and can deal with even more features of regular expressions
   106   (for example subexpression matching, which my rainy-afternoon matcher cannot). I am sure they thought
   106   (for example subexpression matching, which my rainy-afternoon matcher cannot). I am sure they thought
   107   about the problem much longer than a single afternoon. The task 
   107   about the problem much longer than a single afternoon. The task 
   108   in this project is to find out how good they actually are by implementing the results from their paper. 
   108   in this project is to find out how good they actually are by implementing the results from their paper. 
   109   Their approach is based on the concept of derivatives.
   109   Their approach is based on the concept of derivatives.
   110   I used them once myself in a <A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/Publications/rexp.pdf">paper</A> 
   110   I used them once myself in a <A HREF="http://nms.kcl.ac.uk/christian.urban/Publications/rexp.pdf">paper</A> 
   111   in order to prove the <A HREF="http://en.wikipedia.org/wiki/Myhill–Nerode_theorem">Myhill-Nerode theorem</A>.
   111   in order to prove the <A HREF="http://en.wikipedia.org/wiki/Myhill–Nerode_theorem">Myhill-Nerode theorem</A>.
   112   So I know they are worth their money. Still, it would be interesting to actually compare their results
   112   So I know they are worth their money. Still, it would be interesting to actually compare their results
   113   with my simple rainy-afternoon matcher and potentially &ldquo;blow away&rdquo; the regular expression matchers 
   113   with my simple rainy-afternoon matcher and potentially &ldquo;blow away&rdquo; the regular expression matchers 
   114   in Python and Ruby (and possibly in Scala too). The application would be to implement a fast lexer for
   114   in Python and Ruby (and possibly in Scala too). The application would be to implement a fast lexer for
   115   programming languages. 
   115   programming languages. 
   460   in a "self-3d-printed" watch) to a Raspberry Pi seen in the background. The Arduino takes meaurements of 
   460   in a "self-3d-printed" watch) to a Raspberry Pi seen in the background. The Arduino takes meaurements of 
   461   heart rate and body temperature; the Raspberry Pi collects this data and makes it accessible via a simple
   461   heart rate and body temperature; the Raspberry Pi collects this data and makes it accessible via a simple
   462   web-service.
   462   web-service.
   463   <center>
   463   <center>
   464   <img style="-webkit-user-select: none; cursor: -webkit-zoom-in;
   464   <img style="-webkit-user-select: none; cursor: -webkit-zoom-in;
   465   "src="http://www.inf.kcl.ac.uk/staff/urbanc/rpi-photo.jpg" width="209" height="313">
   465   "src="http://nms.kcl.ac.uk/christian.urban/rpi-photo.jpg" width="209" height="313">
   466 
   466 
   467   <img style="-webkit-user-select: none; cursor: -webkit-zoom-in;
   467   <img style="-webkit-user-select: none; cursor: -webkit-zoom-in;
   468   "src="http://www.inf.kcl.ac.uk/staff/urbanc/rpi-watch.jpg" width="450" height="254">
   468   "src="http://nms.kcl.ac.uk/christian.urban/rpi-watch.jpg" width="450" height="254">
   469   </center>
   469   </center>
   470   </p>
   470   </p>
   471 
   471 
   472 <li> <H4>[CU6] Generating Testcases from a Specification</H4>
   472 <li> <H4>[CU6] Generating Testcases from a Specification</H4>
   473 
   473 
   593  algorithm switched on and it almost caused a catastrophic mission failure (see
   593  algorithm switched on and it almost caused a catastrophic mission failure (see
   594  this youtube video <A HREF="http://www.youtube.com/watch?v=lyx7kARrGeM">here</A>
   594  this youtube video <A HREF="http://www.youtube.com/watch?v=lyx7kARrGeM">here</A>
   595  for an explanation what happened).
   595  for an explanation what happened).
   596  We were able to prove the correctness of this algorithm, but were also able to
   596  We were able to prove the correctness of this algorithm, but were also able to
   597  establish the correctness of some optimisations in this
   597  establish the correctness of some optimisations in this
   598  <A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/Publications/pip.pdf">paper</A>.
   598  <A HREF="http://nms.kcl.ac.uk/christian.urban/Publications/pip.pdf">paper</A>.
   599  </p>
   599  </p>
   600 
   600 
   601  <p>On a much smaller scale, there are a few small programs and underlying algorithms where it
   601  <p>On a much smaller scale, there are a few small programs and underlying algorithms where it
   602  is not really understood whether they always compute a correct result (for example the
   602  is not really understood whether they always compute a correct result (for example the
   603  regular expression matcher by Sulzmann and Lu in project [CU1]). The aim of this
   603  regular expression matcher by Sulzmann and Lu in project [CU1]). The aim of this
   611   </p>
   611   </p>
   612 
   612 
   613 <li> <H4>Earlier Projects</H4>
   613 <li> <H4>Earlier Projects</H4>
   614 
   614 
   615  I am also open to project suggestions from you. You might find some inspiration from my earlier projects:
   615  I am also open to project suggestions from you. You might find some inspiration from my earlier projects:
   616  <A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/bsc-projects-12.html">BSc 2012/13</A>, 
   616  <A HREF="http://nms.kcl.ac.uk/christian.urban/bsc-projects-12.html">BSc 2012/13</A>, 
   617  <A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/msc-projects-12.html">MSc 2012/13</A>, 
   617  <A HREF="http://nms.kcl.ac.uk/christian.urban/msc-projects-12.html">MSc 2012/13</A>, 
   618  <A HREF="http://www.inf.kcl.ac.uk/staff/urbanc/bsc-projects-13.html">BSc 2013/14</A> 
   618  <A HREF="http://nms.kcl.ac.uk/christian.urban/bsc-projects-13.html">BSc 2013/14</A> 
   619 </ul>
   619 </ul>
   620 </TD>
   620 </TD>
   621 </TR>
   621 </TR>
   622 </TABLE>
   622 </TABLE>
   623 
   623