I am lucky enough to, sometimes, be contacted by clever young programmers who might want to do something more interesting with their talents than simply work on the next super-duper-one-of-a-kind-money-making start-up.
OK, it only happened twice, but who knows, maybe it will become a trend, some time?
I love the idea of thinking about interesting projects for clever people. I mean I normally work from what people are doing already and I try to twist it in the directions of the things I want to do, but been given the task of thinking of interesting, deep, in principle complicated projects, things that do not have to be ready in one week or two, it's quite wonderful.
When I was a professor in Birmingham, I had a bit more of this good feeling of researching what I wanted, but as a professor one has to worry very much about making sure that milestones are actually in place, that things do work, at least to a certain extent, as a professor owes it to her students to think up projects that have a high probability of success. Professors also owe this high probability of success to their departments and their funders, so research is much more constrained than one might imagine.
[lovely cartoon of research freedom here, when I find it again]
When someone, who's not a student, who's got a job doing something else, wants to discuss interesting complicated problems or tools (like category theory) just for the fun of doing it, then one has much more freedom to think up projects. So here are some things that I really would like to do, if I was a person of independent means, if I didn't have to earn a living.
1. A more purely logic/categorical project, namely check all possible ways of providing categorical models for Classical Logic and showing their pros and cons.
The best explanation I know of the Curry-Howard isomorphism is the paper by Jean Gallier
http://repository.upenn.edu/
(this is constructive logics part 1, part 2 is about Linear Logic is it is also very good, but not as good)
Jean's is completely about constructive logic, but it explains a little why it doesn't work for classical logic. I don't know anything explicitly written to show it doesn't work for classical logic, but I know a collection of works trying to show that it *partly* works for classical logic: Griffin, Filinski, Parigot, Urban, Herbelin, Selinger, Wadler, etc.. in http://www.lix.polytechnique.
(googling just now I found https://www.cs.tcd.ie/ publications/tech-reports/ reports.08/TCD-CS-2008-55.pdf, which may or not be good)
Anyways the project here is to decide which pros, cons are more important for ourselves and then develop the favorite approach.
For this I had one specific way of formalizing the use of resources in the project xSLAM, explicit substitutions for a linear abstract machine
the
write-up with conclusions of the project is in the summary of
achievements, but I do not have crisp version of why it didn't work and I
really would like to know that.
Following this path
might require learning about Linear Logic, categorical combinators and
explicit substitutions, all are great fun.
3. A
language oriented project: A New Unified Lexicon
I worked for almost 9 years at
PARC with people like Dick Crouch and Ron Kaplan (my
ex-manager in PARC and the Nuance Lab's founder). There we had a project
called Bridge, whose aim was to "translate" English sentences into logic
(a variant of first order constructive logic), which I called TIL (for
textual inference logic). This used Xerox' proprietary technology,
specifically the XLE (Xerox language engine) and the LFG Lexical Functional grammar (Ron's
brain child). More recently I wrote and talked about reproducing some of
this work, with different grammars and other components in Bridges from Language to Logic: Concepts, Contexts and
Ontologies.
The project in this case would be to
created something like the Unified Lexicon (one of the components of
Bridge), which was the theme of this paper
https://docs.google.com/file/ d/ 0ByQvGrHooOoHUElwclFSYS1RNTQ/ edit.
https://docs.google.com/file/
The
unified lexicon from PARC used WordNet, VerbNet, Cyc and proprietary
resources (e.g. the subcategorization lexicon) to build a knowledge base where semantics
happens.
My idea would be to use WordNet, Open Multilingual Wordnet (http://compling.hss.ntu.edu. sg/omw/), WordNet's morpho-semantic links (described here https://wordnet.princeton.edu/ wordnet/download/standoff/) with SUMO (http://www.adampease.org/OP/) , instead of Cyc and maybe Yago or perhaps Wikidata to produce a new, souped-up version of the Unified Lexicon.
Of
course this is all real research, so I do not guarantee that any of this
will work as expected, but this is part of the fun, correct?Now I do have collections of lists of interesting things to do with collaborators already in place. Some of my collaborators don't mind the fact that the lists are always long and keep growing. Some others do mind it and feel that there's too much ADD in my lists. I find that, as I grow old and forgetful, hte lists are very handy.
(The photo, woods in New Jersey, are artwork from my friend Lalita Jategaonkar Jagadeesan)
No comments:
Post a Comment