Door 1
op te tellen bij een ordinaal,
neemt de set rij met 1
element toe
en wordt de set 1
niveau genest.
Lengte en diepte
groeien parallel aan het ordinaal getal.
We kunnen stellen dat de maten van beide dimensies
in sets even belangrijk zijn.
Om de set structuur te waarderen nemen we nu de som
van diepte en lengte. Dat werkt ook bij ordinale sets.
Deze waardering vormt geen welordening,
want de som kan groter worden dan de rij lengte alleen,
en is dus ongeschikt om de elementen in een set te indexeren.
De rijen structuur van arrays
is dezelfde als die van sets, zonder dat de set regel,
dat elk rij element uniek moet zijn, daarbij is opgelegd.
Naast lengte en diepte speelt ook de
getalswaarde van elementen mee.
Getallen zijn immers uit te drukken als ordinalen en vice versa.
Zo waarderen we arrays en sets net als
ordinalen:
- {0,{0},{0,{0}},{0,{0},{0,{0}}}}
≡ {0,1,{0,1},{0,1,{0,1}}}
≡ {0,1,2,{0,1,2}}
≡ {0,1,2,3} ≡ 4
- {{{0},1},{2,3},4}
= {{1},{2,3},4}
= {2,{2,3},4}
= {2,4} = 5
- [[[0,0,0,0],1],[2,3],4]
= [[4,1],[2,3],4]
= [5,[2,3],4]
= [5,4,4] = 6
Door geneste sets vanuit de diepte l-r
te vervangen door een getal, determineren we elke set.
Zo worden ordinale sets iteratief tot hun ordinaal getal
herleid16
en soortgelijke structuren, andere sets en arrays,
tot hun ordinale waarde.
Stel nu dat we een getal of parameter
koppelen aan elke geneste array.
Dan verandert de set structuur in een geneste functie array,
waar de sets de parameters indexeren.
Maar de output van zo'n array hoeft geen groot getal te zijn.
We kunnen de waarde van deze structuur
ook weer met optellen determineren.
-
Ordinale evaluatie van
items, lengte, diepte
in sets:
-
Loop in een rij
S
langs de items.
Als een item een rij is,
loop daar dan in verder als in S
.
-
Als
S
de lege set is,
zet er waarde 0
voor in de plaats.
-
Als de rij lengte
r>ei
groter is dan de waarde van elk item,
vervang dan S
door waarde r
.
-
Zoek anders het grootste item
em≥ei
en vervang S
door
em1
.
-
Ordinale evaluatie van
parameter en set
in arrays:
-
Zodra een index array zijn waarde heeft,
telt de gekoppelde
eipi
parameter erbij op.
In geneste functie arrays bepalen parameters op
diepte d1
de index array waarde
voor een gekoppelde parameter op diepte d
.
Voor de totale array volgt de waarde
pi..
:d
door herhaaldelijk optellen. Ofwel w*w
als we parameters en diepte de waarde w
geven.
Dit in contrast met de hogere array functies,
die met dezelfde geneste structuur razend snel
groeien en enorm grote getallen produceren.
Dit bewijst dat er een geneste functie is,
waarin elke variabele en elke dimensie significant kan zijn,
die even langzaam of weinig expressief is als
vermenigvuldiging.∴
De virtuele parameter die we rechts aan sets kunnen koppelen
is
{X}0
nul.
Dan blijken sets nog relatief expressief te zijn,
want in functie arrays negeren of elimineren we
zulke separatoren bij de tot 0
of 1
afgetelde parameters.
-
Welke setwaarde
natuurlijk
is is moeilijk te bepalen.
-
Gewoon tellen van een verzameling objecten geeft de
rij lengte of de kardinale waarde
w
.
-
Een set met een genest element of rij lengte
w
op diepte w
kreeg ordinaal
de waarde w*2
.
-
Een verzameling getallen die we optellen,
heeft een orde van grootte van waarde
w*w
.
-
Tellen we alle waarden in geneste sets op vanaf
diepte
w
,
dan is het totaal ongeveer w^w
.
De structuur van sets en arrays sommeert tot de waarde w^w
,
wanneer we in elke rij steeds w
rijen nesten tot maximaal een diepte w
vanaf de basis.
Dit vormt een matrix met gelijke dimensies,
waar in de diepste rij elk element 1
is.
[[[1,1,1],[1,1,1],[1,1,1]],
[[1,1,1],[1,1,1],[1,1,1]],
[[1,1,1],[1,1,1],[1,1,1]]] =
[[3,3,3],[3,3,3],[3,3,3]] =
[9,9,9] = 27.
Zoals in een volgend blog
§2.3
de geneste structuur van
index array en getal in functie arrays de waarde
w^^w
krijgt door het optellen en opladen van een constante
w
.
Deze geneste radix functie noemen we Aasblazer
.
De waarde ervan is natuurlijk voor deze structuur.
Vandaar dat we de structuur van sets,
als voorganger van de geneste functie arrays,
het best de waarde w^w
toekennen.
Met de introductie van index arrays wordt de komma
,
separator overbodig.
Cantor telde elementen van sets met behulp van
ordinalen.17
Toch lijken de ordinalen de drie set tekens {,}
te verspillen door er enkel natuurlijke getallen mee weer te geven.
We zagen
in §1.4
al, dat de expressieve kracht van holle bolle sets,
waar eenvoudige nestgetallen in plaats nemen, snel explosief wordt.
Tellen is het zuinigst te funderen met units 1
.
Ordinale sets zijn erg verkwistend.
Tenzij… iemand de extra faciliteiten voor op en aftellen,
die Von Neumann ordinalen
in §1.5
boden, elegant weet te benutten?