-
Notifications
You must be signed in to change notification settings - Fork 10
Home
Welcome to the PySeqsee wiki!
Seqsee is a project that started in Douglas Hofstadter's Fluid Concepts and Creative Analogies group. Its goal is to model aspects of human cognition. The specific problem that it tackles --- the micro-domain that it works in --- are pattern sequences made of integers. A canonical example that is trivial for a person but difficult to get at algorithmically is the sequence "1 7 1 2 8 1 2 3 9 1 2 3 4 10". Think for a minute how a computer algorithm may tackle arbitrary sequences of this nature, and contrast this with the effortless ease with which you understood the sequence. The algorithm should also be able to tackle this sequence --- again simple for most people --- "1 1 2 2 2 3 3 3 3 3 4 4 4 4 4 4 4". The space of mathematical sequences of this sort is immense and not easy to navigate. People are able to do this by spotting chunks in the sequence, labeling pieces (e.g., "this here is an ascending group"), noticing relations between chunks, and so forth. Seqsee was a codification of some ideas about cognition --- Hofstadter's "terraced scan" model, augmented with a stream of thought to get a temporal context and with an attention-based long-term memory --- to tackle this problem, and it resulted in a Perl program called Seqsee.
PySeqsee is a reimplementation of Seqsee in Python. It is intended to separate sequence-specific pieces from the architectural core so that developing a system to tackle another type of problem becomes easier. To build, in other words, a FARG-library is an explicit goal of this rewrite.