OFFSET
1,4
COMMENTS
Consider the square array in the Example section.
From the second row on, every term t in the array is the difference between the two integers a and b above it (a is the one immediately above t and b is the one to the right of a). There are two ways to compute this term t: t = a - b or t = b - a. Here we always try first to compute t as "the smallest term minus the biggest term". If this operation produces at some point in the antidiagonal a term already present in the array, we stop to compute the successive differences and try instead "the biggest term minus the smallest term". If this operation fails too (we obtain at some point a term already in the array), we have to prolong the first row with another term k, this term being always the smallest available one not present in the array and not leading to a contradiction at any stage in the antidiagonal that k towers.
LINKS
Carole Dubois, Table of n, a(n) for n = 1..5151
EXAMPLE
The upper-left corner of the array starts like this:
...0....1....3....5...11...17...26....7...12...21...10...23...
..-1....2...-2...-6....6...-9...19...-5....9..-11...13..-16...
..-3....4...-4..-12...15..-28...24..-14...20..-24...29..-34...
..-7....8...-8..-27...43..-52..-38...34..-44...53..-63...82...
.-15...16..-19..-70..-95...14..-72...78..-97..116.-145.-192...
.-31...35..-51..-25.-109...86.-150.-175.-213..261..-47.-171...
.-66..-86..-26..-84.-195.-236...25...38.-474.-308.-124..117...
.-20..-60...58.-111..-41.-261..-13.-512.-166.-184.-241.-339...
.-40.-118.-169...70.-220.-248.-499.-346..-18..-57...98.-361...
.-78...51.-239..290...28.-251.-153.-328..-39.-155.-459..475...
-129.-290.-529.-262.-279..-98..175.-289.-116.-304.-934.-160...
-161..239.-267..-17.-181.-273.-464.-173..188.-630.-774.-364...
...
The first row starts with 0. We prolong it with the smallest unused positive integer so far. This is 1:
..0...1
We compute immediately 0 - 1 = -1 to fill the first antidiagonal and get:
..0....1
....-1..
We cannot prolong the first row with 2 as this 2 would produce a contradiction for c:
..0....1.....2
....-1....c...
Indeed, either 1 - 2 or 2 - 1 would lead to c = -1 or +1, both results being already in the array. We then try to prolong the first row with the next smallest available integer not yet in the array, which is 3:
..0....1.....3
....-1....c..
To compute c, we try first "smallest term minus biggest one":
..0....1.....3
....-1...-2..
.......d.....
But the result -2 result will lead to a term d being either -1 or +1, which are both already in the array; we then try, at the upper level, "biggest term minus smallest term" (this is 3 minus 1 = 2), which produces now a new term c = 3 - 1 and a new hope to compute a term d fitting the array:
..0....1.....3
....-1....2..
.......d.....
Indeed, the operation "smallest term minus biggest one" works now to find d as -1 minus 2 is -3, a term not yet in the array:
..0.....1....3
....-1....2..
.......-3.....
As the last antidiagonal is completed, we try to complete a new one with k, l, m and n, with k, l, m, n not being already in the array:
..0....1....3.....k
....-1...+2....l..
......-3.....m....
..........n.......
etc.
CROSSREFS
KEYWORD
AUTHOR
Eric Angelini and Carole Dubois, Apr 27 2020
STATUS
approved