This is an implementation of an algorithm discovered by Arnborg, Courcelle, Proskurowski, and Seese. They discovered that, using rewrite rules, you can determine, in linear time, whether a particular graph of bounded treewidth has a property that is describable in monadic second order logic. (Whew. That's a mouthful.) Unfortunately, the proof was non-constructive, which means tht you are on your own if you want to automagically generate an algorithm that checks whether or not a set of graphs has a particular property or not.
This directory contains two implementations of the concept
O(nk) due to it being a naive
implementation, although it does contain some pleasingly opaque generator-based
code to generate all combinations of all permutations that was lifted from
Knuth.
Note that this implementations is not quite correct - at the end it only checks whether or not your graph is equal to the null graph or the single point graph, rather than whether or not the reduced graph is isomorphic to any of the set of representatives. This is fine for the reduction sets I implemented, but not all sets have only those as their representatives - you have been warned.
O(n) (expected) time!In this directory, the files contract.pdf and drp.pdf contain my DRP contract and final report, respectively. An HTML version of my DRP is also available.
Apache/2.2.3 (Debian) mod_python/3.2.10 Python/2.4.4 PHP/4.4.4-8+etch6 mod_perl/2.0.2 Perl/v5.8.8 Server at soy.dyndns.org Port 80Name Last modified Size Description
Parent Directory -
DRP-5-25-2004.pdf 24-May-2004 23:05 397K
DRP.ppt 23-May-2004 13:50 139K
DRP.sxi 24-May-2004 22:58 114K
Makefile 15-Mar-2004 22:50 928
NRG.ppt 23-May-2004 13:49 139K
algorithm.tex 24-May-2004 11:11 1.7K
code.tex 01-Apr-2004 09:55 704
contract.aux 24-May-2004 19:38 417
contract.bbl 24-May-2004 19:38 565
contract.blg 24-May-2004 19:38 803
contract.dvi 24-May-2004 19:38 5.6K
contract.log 24-May-2004 19:38 3.4K
contract.pdf 24-May-2004 19:38 58K
contract.ps 24-May-2004 19:38 105K
contract.tex 25-Feb-2004 18:04 3.8K
drp.aux 25-May-2004 08:09 1.5K
drp.bbl 25-May-2004 08:09 681
drp.bib 24-May-2004 19:38 1.8K
drp.blg 25-May-2004 08:09 801
drp.dvi 25-May-2004 08:09 45K
drp.log 25-May-2004 08:09 6.8K
drp.pdf 25-May-2004 08:05 198K
drp.ps 25-May-2004 08:05 340K
drp.tex 25-May-2004 08:09 13K
drp/ 25-May-2004 08:05 -
drp2.tex 07-May-2004 13:25 3.1K
linear/ 25-Feb-2004 18:55 -
makeCodeListing.sh 12-Jan-2004 12:09 277
n_to_the_k/ 22-Sep-2003 16:38 -
p3t_rules.dia 06-May-2004 19:25 4.3K
p3t_rules.eps 06-May-2004 19:25 32K
p3t_rules.png 24-May-2004 12:16 25K
p3t_rules2.eps 25-Feb-2004 20:15 14K
proof.tex 12-Jan-2004 12:09 2.7K
reduction.desc 16-Jul-2003 11:02 736
schedule 23-Sep-2003 22:31 1.7K
writeup.tex 15-Mar-2004 22:50 13K