% ftp umiacs.umd.edu <== Get file by anonymous ftp
Name (umiacs.umd.edu:logname): anonymous
Password: enter your e-mail address
ftp> cd pub/resnik/ling645
ftp> binary
ftp> get cky.tar.gz
ftp> quit
% gunzip cky.tar.gz <== Uncompress
& tar xvf cky.tar <== Extract the files
% rm cky.tar <== Delete to conserve space
% cd cky <== Go into the code directory
% gcc -o cky cky.c <== Compile the program (ignore warnings)
Note that you don't have to implement an algorithm, just show it on paper. Since we're not working with probabilities here, I recommend you start with the algorithm in the class handout, not the probabilistic CYK algorithm from the book.
Some other things to try:
S -> NP VP . | Who VP ?
NP -> DET N | DET ADJ N | NP PP | all DET N | some of DET N
VP -> VPT | VPI | VP PP
VPT -> VT NP
VPI -> VI
PP -> P NP
DET -> the | those | these
N -> men | women | children | cookies | fences | songs | guitars
VI -> slept | sang | cried | laughed | jumped | cooked | played
VT -> saw | liked | tickled | cooked | played | played with |
ignored | sang | sang to
ADJ -> tall | short | nice | happy
P -> with | near | next to | for
Try training up rule probabilities for this grammar and see what you
get.