De 1-splitsing (h1, h2) kan op verschillende manieren geïnterpreteerd worden. Geen van deze manieren sluiten we uit:
als een directe som die zich in bitstring formaat voordoet als het concateneren van de bitstring links en de bitstring rechts (waarbij impliciet verondersteld wordt dat de beide bitstrings eventueel gecollapste uitdrukkingen zijn uit hetzelfde universum)
als een andere notatie voor <x<h1>><<x><h2>> waarbij x de onderscheiding is die toegevoegd wordt
als een andere notatie voor (h1⊗h2)a, de coëfficiënten in een basis die hier gevormd is uit de welgevormde haakuitdrukking a. Merk op dat we hiermee ook een koppel getallen in het haakformalisme kunnen uitdrukken
als een manier om individuele bits te manipuleren, bijvoorbeeld (h1, h2) kunnen we beschouwen als (1, 1) die een som is van (1, 0) en (0, 1), waarbij de 0 hier uiteraard staat voor een don't care en niet voor de -1 bit.
We merken op dat de toegevoegde onderscheiding niet zichtbaar is in de notering (h1, h2), maar impliciet is die toch aanwezig als de ordening van het koppel. We kunnen dus altijd veronderstellen dat dit invullingen zijn voor de “laatst toegevoegde onderscheiding” ℵ, het Hebreeuwse symbool voor alef, symbool dat niet in de tralie ingebouwd wordt. Inderdaad merken we dat alle operaties uit het 1-splitsing universum associatief zijn zoals dit ook het geval is bij het creatief product met steeds dezelfde toegevoegde onderscheiding.
We expliciteren de relatie met het creatief product door gebruik
te maken van een van de operaties in het 1-splitsing universum die
bekend geworden is onder de naam van een 2x2 Hadamard matrix
(Hadamard matrices zijn transformatiematrices die
we ook in hun algemeenheid kunnen onderzoeken). Deze operator
verandert de kolom vector (x, y)T in de kolom vector (x⊕y,
x⊕<y>)T en omgekeerd (op de factor -1 na, en
omgekeerd zonder factor -1). Hierbij hoeven we geen enkele voorwaarde
te stellen aan x of aan y. De resulterende kolom vector kunnen we ook
als volgt voorstellen als de som van twee kolom vectoren met
coëfficiënten respectievelijk x en y:
.
De kolom vectoren in het rechterlid interpreteren we nu als een (h1,
h2)T met individuele bits, dus in dit geval als
(1, 1)T en (1, -1)T. Dit maakt de relatie met
het creatief product duidelijk wanneer we het symbool voor de
kolomvectoren in het rechterlid door hun interpretatie in het één
onderscheiding universum vervangen:
.
Hiermee maken we de impliciet gebleven toegevoegde onderscheiding
duidelijk als de onderscheiding in een één
onderscheiding universum. Inderdaad: de uitdrukking <<>>•x⊕a•y
is, met x niet verschillend van (<s>⊕<t>) en y niet
verschillend van (<s>⊕t), van het type
(<s>⊕<t>)•<<>>⊕(<s>⊕t)•a=(s⊗t)a
zoals we het
creatief product uitgedrukt hebben, met zijn niet commutatieve
variant (t⊗s)a=(<t>⊕<s>)•<<>>⊕(<t>⊕s)•a.
Voor het creatief product zijn (<s>⊕<t>) en (<s>⊕t)
orthogonaal terwijl dat voor de kolomvector die getransformeerd wordt
niet verondersteld wordt, x en y kunnen volledig onbekende structuren
zijn die door de Hadamard transformatie kunnen omgevormd worden tot
(x⊕y, x⊕<y>)T.
Dit maakt daarenboven nog het volgende duidelijk over de matrix vermenigvuldiging:
In de operator die als 2x2 matrix voorgesteld wordt zijn twee rijvectoren gecodeerd waarmee de componenten vermenigvuldigd worden van de kolomvector waarop de operator inwerkt.
De vermenigvuldigingen zijn gewone vectorvermenigvuldigingen met het symbool (kolomvector) dat gebruikt wordt voor de kolomvector uit de operator. Deze symbolen hebben we afgebeeld op de elementen van het één onderscheiding universum en kunnen we dus door de symbolen die gebruikt worden in een één onderscheiding universum vervangen.
Wat we dus doen met een matrix vermenigvuldiging van een 2x2 matrix met een kolomvector is de componenten van de kolomvector projecteren op de basis vectoren van een één onderscheiding universum. Dat één onderscheiding universum moet geen a priori relatie hebben tot de componenten van de kolomvector die geprojecteerd wordt. Dus men kan dit ook als volgt interpreteren: de hele constructie voegt één onderscheiding toe aan de onderscheidingen die de kolomvector opspannen waarop geageerd wordt.
Sommige vermenigvuldigingen met de componenten van de kolomvectoren die in de operator gecodeerd zijn zullen het resultaat niet beïnvloeden wanneer ze geen deel uitmaken van de ruimte van de component.
Als x en y elkaars orthogonale involutie zijn en dus de som H=x⊕y een directe som is, dan leidt de 1-splitsing tot projecties die elkaars directe som blijven. Op die manier hebben we coëfficiënten gedefinieerd.
Het creatief product (s⊗t)a=(<s>⊕<t>)•<<>>⊕(<s>⊕t)•a wordt dus uitgedrukt door de matrix vermenigvuldiging van de rijvector ((<s>⊕<t>), (<s>⊕t)) met de kolomvector (<<>>, a)T.
De matrix vermenigvuldiging is dus een speciaal geval van het creatief product in het haakformalisme. De actie van een operator uit het 1-splitsing universum op een splitsing voorgesteld als kolom of rij komt overeen met het toevoegen van één onderscheiding. Dit kan op vier manieren, een afbeelding gebaseerd op de set (ε, νυ), een afbeelding gebaseerd op de set (υ, ν), een afbeelding gebaseerd op de set (ν, νυ), een afbeelding gebaseerd op de set (ε, υ). Een willekeurige 2x2 matrix operator codeert dus onderliggend de structuur van een tralie met één onderscheiding, tralie die op verschillende manieren kan opgespannen worden met onderliggende symmetrische 2x2 matrices.
Merk op dat de basisvectoren van het één onderscheiding universum in de rijen van de operator gecodeerd zijn maar zich als kolommen in het rechterlid bevinden en zo de functie opnemen van de basisvectoren waarmee de componenten van de kolommen vermenigvuldigd worden met een gewone vectorvermenigvuldiging. De transpose van de operator die we als voorbeeld gebruikten is echter dezelfde operator, de mogelijkheden opgespannen door de rijen zijn dus niet verschillend van deze door de kolommen. We zeggen dat de kolomruimte en de rijruimte in dit geval dezelfde zijn, maar in het algemeen zal dit niet het geval zijn.
Een volledig analoge redenering kan gemaakt worden voor de operaties op rijvectoren, waarbij de operator zich dus rechts van de rijvector bevindt waarop hij inwerkt.
Laten we nu het inzicht dat hele ruimtes getransformeerd worden eens expliciteren met een concreet voorbeeld van een creatief product. Het creatief product van b en a is als een nevenschikking van nevenschikkingen als volgt gedefinieerd: <c<b>><<c><a>>, waarbij c staat voor een toegevoegde welgevormde haakuitdrukking. In binair formaat, met de conventionele vertaling van a, b en c als onderscheidingen wordt <c<b>><<c><a>> vertaald als 11001010. Het creatief product is een “indien... dan...” constructie die we in binair formaat ook als volgt kunnen uitdrukken: als c, of 11110000 niet kan onderscheiden worden van <>, of 00000000, dan drukken we dit uit door de gecollapste uitdrukking xxxx0000, Als c niet kan onderscheiden worden van <<>> dan drukken we dit uit door de gecollapste uitdrukking 1111xxxx. Wat we dus zien is de 1-splitsing <<>>⊕<c> versus <>⊕<c>, en de som van beide is <<>>⊕<c>⊕<>⊕<c>=c.
We drukken nu <c<b>><<c><a>>, dus 11001010, uit in de basis die gevormd wordt door deze 1-splitsing. In vectorformaat geldt dat 11001010 overeenkomt met c•a⊕<a>⊕<b>⊕<c•b> en dit kunnen we nu schrijven als (<>⊕c)•a⊕(<>⊕<c>)•b.
Hetzelfde bereiken we in bitstring formaat: (xxxx1111)•(10101010)⊕(1111xxxx)•(11001100)=xxxx1010⊕1100xxxx=11001010.
De vectorsom drukt hierbij perfect uit dat XOR niet kan onderscheiden worden van OR, wat ook in haakformaat duidelijk is:
11001010 ∼ <c<b>><<c><a>> ∼ c•a⊕<a>⊕<b>⊕<c•b> ∼ (<>⊕<b>⊕c⊕<b•c>)•(<>⊕<a>⊕<c>⊕c•a) ∼ (11001111)•(11111010) met (11001111) ∼ <c<b>> ∼ <>⊕<b>⊕c⊕<b•c> en (11111010) ∼ <<c><a>> ∼ <>⊕<a>⊕<c>⊕c•a.
Elke welgevormde haakuitdrukking kunnen we als een creatief product met c schrijven en dit uitdrukken in de basis [(<>⊕c), (<>⊕<c>)]. Dit genereert “coëfficiënten” die kunnen gesommeerd worden zoals bij de klassieke getalsom en die vermenigvuldigd kunnen worden zoals bij het klassieke getalproduct. Deze coëfficiënten zijn niet eenduidig en staan dus voor volledige ruimtes die getransformeerd worden. Dit is het snelst in te zien in bitstring formaat.
We hernemen daarom de 1-splitsing die gegenereerd wordt door c:
(xxxx1111)•(10101010)⊕(1111xxxx)•(11001100)=xxxx1010⊕1100xxxx=11001010.
Wanneer we nu een coëfficiënt toevoegen aan elke term van de som dan is duidelijk dat de bits die door de don't cares gaan opgeslorpt worden vrij kunnen gekozen worden zonder het resultaat te beïnvloeden, bijvoorbeeld:
{(xx011111)•(xxxx1111)•(10101010)}⊕{(11110001)•(1111xxxx)•(11001100)}=xxxx1010⊕1100xxxx=11001010.
Dit kunnen we natuurlijk ook anders schikken, zoals
{(xxxx1111)•(xx001010)}⊕{(1111xxxx)•(11000010)}=xxxx1010⊕1100xxxx=11001010.
Exact dit kunnen we nu in operator formaat uitdrukken. We hernemen daarom de 1-splitsing die gegenereerd wordt door c:
(xxxx1111)•(10101010)⊕(1111xxxx)•(11001100)=xxxx1010⊕1100xxxx=11001010.
We voeren nu een 1-splitsing uit met c:
(xxxx 1111)•(1010 1010)⊕(1111 xxxx)•(1100 1100)=(xxxx 1010)⊕(1100 xxxx)=(1100 1010)
Dit is niet anders dan
Het inzicht dat hele ruimtes getransformeerd worden komt ook tot uiting doordat we inzien dat ook andere 1-splitsingen gegenereerd kunnen worden voor exact dezelfde welgevormde haakuitdrukking. We geven hiervan een voorbeeld
<<>>•(<a>⊕<b>)⊕c•(a⊕<b>)∼(11111111)•(1xx01xx0)⊕(11110000)•(x10xx10x)
<<>>•a•(<>⊕<b•a>)⊕c•<a>•(<>⊕b•a)∼(11111111)•(10101010)•(1xx11xx1)⊕(11110000)•(01011010)•(x11xx11x)
Met een ander voorbeeld: de basis [(<a>⊕<c>), (a⊕<c>)] ∼ [(1x1xx0x0), (x1x10x0x)] zal met de gepaste coëfficiënten eveneens c•a⊕<a>⊕<b>⊕<c•b> ∼ 11001010 kunnen genereren. Deze coëfficiënten zijn gemakkelijk als volgt te berekenen door de orthogonale componenten te vermenigvuldigen met de gecollapste punten die 11001010 als som volgens die orthogonale opsplitsing genereren: (1x1xx0x0)•(1x0xx0x0)=(1x0xx1x1). Maar uiteraard zal elke welgevormde haakuitdrukking tussen de extrema (10000101) en (11011111) als coëfficiënt kunnen gebruikt worden. (x1x10x0x)•(x1x01x1x)=(x1x00x0x). Maar uiteraard zal elke welgevormde haakuitdrukking tussen de extrema (01000000) en (11100101) als coëfficiënt kunnen gebruikt worden.
We merken op dat deze keuze van voorbeelden symmetrisch is in die zin dat zowel de ene als de andere orthogonale component vier don't cares telt, maar dit hoeft niet. Inderdaad zal elk deeluniversum splitsing kunnen genereren.
Nota: de gecollapste haakvectoren zijn met de signatuuratomen te construeren
(1x0xx1x1) wordt dan
+xxxxxxx |
<>⊕<a>⊕<b>⊕<c>⊕<b•a>⊕<b•c>⊕<c•a>⊕<c•b•a> |
xx-xxxxx |
<<>>⊕a⊕<b>⊕c⊕<b•a>⊕<b•c>⊕c•a⊕<c•b•a> |
xxxxx+xx |
<>⊕a⊕<b>⊕c⊕b•a⊕b•c⊕<c•a>⊕<c•b•a> |
xxxxxxx+ |
<>⊕a⊕b⊕c⊕<b•a>⊕<b•c>⊕<c•a>⊕c•b•a |
+x-xx+x+ |
<<>>⊕<a>⊕b⊕<c>⊕b•a⊕b•c⊕c•a⊕c•b•a |
(x1x00x0x) wordt dan
x+xxxxxx |
<>⊕a⊕<b>⊕<c>⊕b•a⊕<b•c>⊕c•a⊕c•b•a |
xxx-xxxx |
<<>>⊕<a>⊕<b>⊕c⊕b•a⊕<b•c>⊕<c•a>⊕c•b•a |
xxxx-xxx |
<<>>⊕a⊕b⊕<c>⊕b•a⊕<b•c>⊕<c•a>⊕<c•b•a> |
xxxxxx-x |
<<>>⊕a⊕<b>⊕<c>⊕<b•a>⊕b•c⊕<c•a>⊕c•b•a |
x+x--x-x |
<>⊕<a>⊕b⊕c⊕<b•a>⊕b•c⊕c•a⊕<c•b•a> |
De matrix vermenigvuldiging hebben we al begrepen als een operatie met steeds dezelfde, maar niet geëxpliciteerde, onderscheiding. Nochtans is dat niet de enige impliciete veronderstelling die de klassieke matrix vermenigvuldiging zinvol maakt als model voor karakteristieken van de werkelijkheid. Om dat in te zien kiezen we nu voor een willekeurige basis en gaan die transformeren met de Hadamard matrix H2.
Hieruit volgt dat deze operator de kolom vector (of basis) (<<>>, h)T verandert in de kolom vector (of basis) (<>⊕<h>, <>⊕h)T en omgekeerd (op de factor -1 na, en omgekeerd zonder factor -1). Hierbij hoeven we geen enkele voorwaarde te stellen aan h. De operatie die gecodeerd wordt in de matrix is af te beelden op <<>>⊕a uit de set (υ, ν), een van de vier sets die het 1-splitsing universum kunnen opspannen. Deze operatie voert een lineaire combinatie uit van de rijen <>⊕<h> en <>⊕h uit de matrix (<>⊕<h>, <>⊕h)T naar één kolom, namelijk de kolommatrix (<<>>, h)T. We herhalen ook dat de eerste rij in de operator overeenkomt met de binaire codering van <<>>, en de tweede rij overeenkomt met de binaire codering van a, conventioneel de ene onderscheiding in een één onderscheiding universum. Hetzelfde geldt voor de kolommen aangezien de H2 matrix identiek is met zijn transpose.
We merken nu op dat behalve <>⊕<h> en <>⊕h meerdere haakuitdrukkingen die in de rijen kunnen gebruikt worden op dezelfde manier zullen getransformeerd worden. Dit is eenvoudig als volgt in te zien: een punt (haakvector, structuur) uit de ruimte van <>⊕h (de onderste rij van de kolom matrix (<>⊕<h> <>⊕h)T) zal door vermenigvuldiging met <>⊕<h> (de bovenste rij van de kolom matrix (<>⊕<h> <>⊕h)T) niet veranderd worden, en omgekeerd. Maar er is meer: de gemeenschappelijke + bits zullen evenmin een invloed hebben en evenmin de gemeenschappelijke don't care bits. Dus de componenten van de 1-splitsing moeten niet elkaars orthogonale involutie zijn op voorwaarde dat de transformatie uitgevoerd wordt met de suprema van de ruimten. Dat betekent dus dat de componenten van de 1-splitsing enkel elkaar moeten uitsluiten en niet orthogonaal moeten zijn.
Bijvoorbeeld: neem als <h> de welgevormde haakuitdrukking <>⊕<b>⊕<c•a>⊕c•b•a, in bitstring (+++-++-+), dus <>⊕<h> is <<>>⊕<b>⊕<c•a>⊕c•b•a, in bitstring (xxx+xx+x). Door inbedding vormen we nu h: <<>>⊕b⊕c•a⊕<c•b•a> en dan ook <>⊕h of dus b⊕c•a⊕<c•b•a> en dit is in bitstring (+++x++x+). Dus een structuur zoals <>⊕<b>⊕<c•a>⊕c•b•a of in bitstring (+++-++-+)zal door de transformatie (vermenigvuldiging met) (+++x++x+) deze laatste niet beïnvloeden, inderdaad (+++-++-+)•(+++x++x+)=(+++x++x+). Maar ook: een structuur zoals bijvoorbeeld <b>⊕<c>⊕<c•b> of in bitstring (xx++++++) die deels tot de ruimte van <>⊕h (dus b⊕c•a⊕<c•b•a> of +++x++x+) behoort, deels gemeenschappelijke + bits heeft en don't care bits zal door de transformatie (vermenigvuldiging met) (xxx+xx+x) deze laatste niet beïnvloeden, inderdaad (xx++++++)•(xxx+xx+x)=(xxx+xx+x). De relatie van <b>⊕<c>⊕<c•b> met de ruimte van <>⊕h is als volgt te expliciteren: (xx++++++) is een som van bijvoorbeeld (+++x++x-) dat een element is van de tralie waarvan <>⊕h het supremum (en dus de projector) is en bijvoorbeeld (--+++++-) dat voor de gepaste don't care bits en de gemeenschappelijk + bit zorgt.
Dat betekent dus concreet dat we de basisvectoren met die haakvectoren kunnen vermenigvuldigen zonder daardoor de transformatie van de basis te beïnvloeden. Dit betekent dus dat we het koppel {<b>⊕<c>⊕<c•b>, <>⊕<b>⊕<c•a>⊕c•b•a} in de basis {<<>>⊕<b>⊕<c•a>⊕c•b•a, b⊕c•a⊕<c•b•a>} met dezelfde transformatie en factor -1 kunnen omzetten in de basis {<<>>, <<>>⊕b⊕c•a⊕<c•b•a>}. Dus in bitstring: de basis {(xxx+xx+x), (+++x++x+)} wordt nog steeds omgezet in de basis {(++++++++), (---+--+-)} en even zo worden de kolomvectoren ( (<b>⊕<c>⊕<c•b>)•(<<>>⊕<b>⊕<c•a>⊕c•b•a) (<>⊕<b>⊕<c•a>⊕c•b•a)•(b⊕c•a⊕<c•b•a>) )T en (<<>> <<>>⊕b⊕c•a⊕<c•b•a>)T in elkaar getransformeerd.
Merk op dat enkel een vermenigvuldiging met <<>> van elke component van (<<>> <<>>⊕b⊕c•a⊕<c•b•a>)T of dus (<<>>•<<>> <<>>•<<>>⊕b⊕c•a⊕<c•b•a>)T de inverse transformatie niet zal beïnvloeden omdat beide componenten (rijen van de kolommatrix) welgevormde haakuitdrukkingen zijn. Dat betekent dus dat de inverse operatie, met dus dezelfde (symmetrische) operator waarbij dus de kolom (<<>> <<>>⊕b⊕c•a⊕<c•b•a>)T naar de basis {<<>>⊕<b>⊕<c•a>⊕c•b•a, b⊕c•a⊕<c•b•a>} zal getransformeerd worden gewoonlijk meerdere oplossingen zal hebben.
Laten we dat wat we begrepen hebben in matrix formules voorstellen:
Dit is het resultaat van de volgende effectief uitgevoerde som van kolomvectoren:
Die som van kolomvectoren is ook als volgt te noteren:
Dit is niet verschillend van de volgende operatie:
En dit is dan ook als volgt te noteren:
Dit op zijn beurt is niet verschillend van:
Hiermee drukken we dan het resultaat terug uit in zijn meest compacte vorm.
De matrices die de operatoren zijn van het 1-splitsing universum zullen niet enkel ageren op een 1-splitsing met orthogonale componenten (waarbij ze een uitdrukking zijn van een basis voor een welgevormde haakuitdrukking als creatief product), maar evenzeer op elkaar uitsluitende componenten. In beide gevallen zijn ze in staat simultane punten mee te nemen in de berekeningen zonder dat deze punten de berekeningen beïnvloeden en dus worden hele ruimtes getransformeerd zonder dat ze “vervormd” worden door de transformatie.
Uiteraard geldt dit ook voor de componenten van een euclidische ruimte, componenten die elkaar dus uitsluiten want op die manier is een euclidische ruimte gedefinieerd.
In de klassieke wiskunde zijn matrices [A] bekend met getallen als componenten aij. Een 2x2 matrix begrijpen we nu als een twee dimensionale vorm die als som van onderliggende matrices moet begrepen worden met de volgende nooit geëxpliciteerde veronderstellingen (die enkel in het haakformalisme fundamenteel kunnen begrepen worden):
er wordt één onderscheiding toegevoegd die voor alle matrices dezelfde is
de opgespannen ruimtes sluiten elkaar uit