Newsgroups: comp.ai
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!oitnews.harvard.edu!purdue!ames!lll-winken.llnl.gov!uop!csus.edu!netcom.com!whitten
From: whitten@netcom.com (David Whitten)
Subject: Re: A General Theory of Patterns?
Message-ID: <whittenDCy7Es.Lu5@netcom.com>
Organization: NETCOM On-line Communication Services (408 261-4700 guest)
X-Newsreader: TIN [version 1.2 PL1]
References: <403do0$p46@Venus.mcs.com>
Date: Mon, 7 Aug 1995 16:06:27 GMT
Lines: 48
Sender: whitten@netcom11.netcom.com

Jorn Barger (jorn@MCS.COM) wrote:

: Has anybody ever built an AI for solving the sort of IQ-test problems
: that involve *mathematical sequences*?

: Like: 1, 1, 2, 3, 5, ...?

: By the complementarity principle, the same program that can recognize
: these ought to be able to *generate* an infinite range of sequences... 
: and a more generalized version might be able to generate infinite
: other varieties of *patterns*...
: Is there some level of extreme mathematical abstraction where there
: are general laws about patterns and combinations, independent of
: all pattern *content*?

I believe there is a principle that some have called the principle of 
small numbers which states that given a finite sequence of small numbers
that there is an infinite number of mathematical 'equations' that will
generate those numbers. I put 'equations' in quotes since these equations
do not have to be simple polynomials, but may involve discontinuities
or step functions.

This means that no matter which number you choose as the next number
there is some 'equation' that will predice it.

let's say you wanted the next number to be 1.   A simple definition might
be "the first 5 numbers of the fibonacci sequence, repeated endlessly.

if you wanted it to be 3, you could say 'the first 5 numbers of the 
fibonacci sequence, followed by the first 4 numbers of the fib. sequence
reversed (ie: 1 1 2 3 5 3 2 1 1) repeated endlessly.

I think the essense of your desire for a 'pattern/combination abstraction
for mathematics will have to include some concept of 'interesting-ness'.
I know that a concept of 'simplicity' would be useful for me as well.
I personally feel x^2 + 2x + 1 is less 'simple' than (x+1)^2.

I believe in math functions this concept is easier to define algorithmically
than for general semantic functions.  I think the simplifier in Mathematica
must use some algorithmic definition for simplicity.

I think D. Lenat's Eurisko included some concept of interestingness and I
know that CYC does as well. For the general case it boils down to someone
actually telling the computer what is interesting and what is not.
(though I expect it has to be related to number of occurances of
instances and generality of the specified attribute)

David (whitten@netcom.com)   (214) 437-5255
