Wat is er bijzonder aan deze woordkettingen?
ket, knoet, knoeit, knoeipot
ton, toren, actoren, reactoren, refractoren
oud, ouds, ouders, houders, schouders, schoudertas
pre, prei, sprei, sproei, sproeier, besproeier, besproeiers
ere, eren, veren, verken, verteken, versteken, oversteken, overstekken
In elke ketting wordt het volgende woord gevormd door op een bepaalde plaats (aangeduid door een blauw vierkant: ■) in het voorgaande woord de symbolische naam (blauwe tekst) van een chemisch element in te voegen.
k■et + No (nobelium) → knoe■t + I (jodium) → knoei■t + Po (polonium) → knoeipot
to■n + Re (renium) → ■toren + Ac (actinium) → ■actoren + Re (renium) → re■actoren + Fr (francium) → refractoren
oud■ + S (zwavel) → oud■s + Er (erbium) → ■ouders + H (waterstof) → ■houders + Sc (scandium) → schouder■s + Ta (tantalium) → schoudertas
pre■ + I (jodium) → ■prei + S (zwavel) → spr■ei + O (zuurstof) → sproei■ + Er (erbium) → ■sproeier + Be (beryllium) → besproeier■ + S (zwavel) → besproeiers
ere■ + N (stikstof) → ■ eren + V (vanadium) → ver■en + K (kalium) → ver■ken + Te (tellurium) → ver■teken + S (zwavel) → ■versteken + O (zuurstof) → overste■ken + K (kalium) → overstekken
Een stof is een vorm van materie die een gelijke chemische samenstelling heeft — een chemisch zuivere stof. Een stof kan bestaan uit atomen van één chemisch element (een enkelvoudige stof) of uit atomen van twee of meer elementen (een samengestelde stof).
Een chemische reactie is een proces waarbij een verzameling stoffen (bv. $$A$$, $$B$$ en $$C$$) omgezet wordt naar een andere verzameling stoffen (bv. $$D$$ en $$E$$) \[ A + B + C \longrightarrow D + E \] De stoffen aan het begin van een chemische reactie noemen we reactanten ($$A$$, $$B$$ en $$C$$ in het voorbeeld). De stoffen op het einde van de reactie noemen we producten ($$D$$ en $$E$$ in het voorbeeld).
Synthese is een reactie waarbij een nieuwe stof gemaakt wordt. Ontleding is een reactie waarbij een stof wordt afgebroken.
Een elementaire reactie is het kleinste deelproces waarin een chemische reactie kan ontleed worden, en heeft dus geen tussenproducten. De meeste experimenteel waargenomen reacties bestaan uit meerdere elementaire reacties die parallel of opeenvolgend gebeuren.
We stellen een chemische stof voor als een reeks letters (str): zowel hoofdletters als kleine letters zijn toegelaten. We werken met elementaire synthesereacties die een stof (reactant) en één atoom van een chemisch element (atoom) verbinden tot een nieuwe stof (product)
reactant + atoom → product
We werken ook met elementaire ontledingsreacties die een stof (reactant) afbreken tot een nieuwe stof (product) en één atoom van een chemisch element (atoom)
reactant → product + atoom
Elementaire synthese en ontleding zijn dus elkaars tegenhangers. In beide gevallen zorgen we ervoor dat de reactant en het product bestaande Nederlandse woorden (str) zijn en wordt het atoom voorgesteld door de symbolische naam (str) van een chemisch element. Die naam bestaat uit één of twee letters (meestal voorgesteld als een hoofdletter, eventueel gevolgd door een kleine letter). Een elementaire synthesereactie voegt de symbolische naam van een atoom in op een bepaalde positie (aangeduid door ■; vooraan, achteraan of ergens middenin) tussen de letters van de reactant. Zo krijgen we bijvoorbeeld
schui■l + Fe → schuiFel
Een elementaire ontledingsreactie verwijdert de symbolische naam van een atoom op een bepaalde positie (■) uit de letters van de reactant. Zo krijgen we bijvoorbeeld
basCules → bas■les + Cu
Gevraagd wordt:
Schrijf een functie synthese waaraan twee strings (str) moeten doorgegeven worden: i) een reactant en ii) de symbolische naam van een atoom. De functie moet een lijst (list) teruggeven met alle mogelijke producten (str; in kleine letters) die kunnen ontstaan uit een elementaire synthesereactie van de reactant en het atoom. Die producten moeten opgelijst worden volgens de positie (van links naar rechts) waar de symbolische naam van het atoom ingevoegd wordt voor, tussen of na de letters van de reactant. Daarbij moet niet gecontroleerd worden of deze producten ook bestaande woorden zijn.
Schrijf een functie ontleding waaraan twee strings (str) moeten doorgegeven worden: i) de reactant en ii) het product uit een elementaire ontledingsreactie. De functie moet het resultaat (product en atoom) van de ontledingsreactie teruggeven als een tuple met twee strings (str):
het product: de reactant waaruit de symbolische naam van het atoom verwijderd werd op een positie die wordt aangeduid met een vierkant (■) en die daarnaast de hoofdletters en kleine letters behoudt zoals ze voorkomen in de reactant
het atoom: de symbolische naam die uit de reactant verwijderd werd, voorgesteld worden als een hoofdletter die eventueel gevolgd wordt door een kleine letter
Bij het zoeken naar de symbolische naam die uit de reactant moet verwijderd worden om het product te bekomen, mag geen onderscheid gemaakt worden tussen hoofdletters en kleine letters in de reactant en het product. De functie mag ervan uitgaan dat de ontledingsreactie maar op één mogelijke manier kan gebeuren, zonder dat dit expliciet moet gecontroleerd worden.
Schrijf een functie atomen waaraan een reeks (list of tuple) moet doorgegeven worden met de originele reactant en de opeenvolgende (tussen)producten van een reactie die bestaat uit een aantal opeenvolgende elementaire ontledingsreacties. Die stoffen moeten echter niet per se opgelijst worden in de volgorde waarin ze voorkomen in de opeenvolgende fasen van de reactie. De functie moet een lijst (list) teruggeven met de symbolische namen (str) van de atomen die verwijderd worden bij de opeenvolgende elementaire ontledingsreactie (opgelijst in die volgorde). Elke symbolische naam moeten voorgesteld worden als een hoofdletter, eventueel gevolgd door een kleine letter. Bij het zoeken naar de symbolische naam die uit een reactant moet verwijderd worden om het volgende product te bekomen, mag geen onderscheid gemaakt worden tussen hoofdletters en kleine letters in de reactant en het product. De functie mag ervan uitgaan dat de opeenvolgende elementaire ontledingsreacties telkens maar op één mogelijke manier kunnen gebeuren, zonder dat dit expliciet moet gecontroleerd worden.
Omdat er bij opeenvolgende elementaire ontledingsreacties telkens één atoom (symbolische naam) verloren gaat, krijg je doorheen de reactie een reeks stoffen (woorden) die steeds korter worden. Daarmee kan je dus de volgorde reconstrueren waarin de stoffen (woorden) voorkomen in de opeenvolgende fasen van de reactie.
Schrijf een functie producten waaraan twee argumenten moeten doorgegeven worden: i) een reactant (str) uit een ontledingsreactie, en ii) een reeks (list of tuple) met de symbolische namen (str) van de atomen die verwijderd worden bij de opeenvolgende elementaire ontledingsreacties (in de volgorde waarin ze verwijderd worden). De functie moet een lijst (list) teruggeven met de reactant (str) en de (tussen)producten (str) die ontstaan bij de opeenvolgende elementaire ontledingsreacties (opgelijst in die volgorde). Bij het verwijderen van de symbolische naam van een atoom mag geen onderscheid gemaakt worden tussen hoofdletters en kleine letters, maar het product moet de overige letters van de reactant wel behouden in hun originele vorm. Het is mogelijk dat de symbolische naam van een atoom meerdere keren in een reactant voorkomt. Als alle letters van een gegeven symbolische naam hoofdletters zijn, dan moet het laatste voorkomen van de symbolische naam verwijderd worden. Anders moet het eerste voorkomen verwijderd worden.
>>> synthese('schuil', 'Fe')
['feschuil', 'sfechuil', 'scfehuil', 'schfeuil', 'schufeil', 'schuifel', 'schuilfe']
>>> synthese('Basles', 'Cu')
['cubasles', 'bcuasles', 'bacusles', 'bascules', 'baslcues', 'baslecus', 'baslescu']
>>> synthese('SLA', 'Ca')
['casla', 'scala', 'slcaa', 'slaca']
>>> synthese('ENgelTjEs', 'B')
['bengeltjes', 'ebngeltjes', 'enbgeltjes', 'engbeltjes', 'engebltjes', 'engelbtjes', 'engeltbjes', 'engeltjbes', 'engeltjebs', 'engeltjesb']
>>> ontleding('schuifel', 'schuil')
('schui■l', 'Fe')
>>> ontleding('Bascules', 'Basles')
('Bas■les', 'Cu')
>>> ontleding('SCALA', 'SLA')
('S■LA', 'Ca')
>>> ontleding('BeNgElTjEs', 'EnGeLtJeS')
('■eNgElTjEs', 'B')
>>> atomen(['knoet', 'knoeipot', 'ket', 'knoeit'])
['Po', 'I', 'No']
>>> atomen(('Toren', 'Actoren', 'Refractoren', 'Reactoren', 'Ton'))
['Fr', 'Re', 'Ac', 'Re']
>>> atomen(['SCHOUDERTAS', 'SCHOUDERS', 'OUDERS', 'HOUDERS', 'OUDS', 'OUD'])
['Ta', 'Sc', 'H', 'Er', 'S']
>>> atomen(('bESproeier', 'PreI', 'BEsPROeierS', 'PrE', 'sPrOeI', 'SpROEier', 'spRei'))
['S', 'Be', 'Er', 'O', 'S', 'I']
>>> atomen(['Erkende', 'Overtekende', 'Vertekende', 'Verkende', 'Ede', 'Overgetekende', 'Ende', 'Kende'])
['Ge', 'O', 'Te', 'V', 'Er', 'K', 'N']
>>> producten('knoeipot', ['Po', 'i', 'No'])
['knoeipot', 'knoeit', 'knoet', 'ket']
>>> producten('Refractoren', ('FR', 'Re', 'Ac', 'Re'))
['Refractoren', 'Reactoren', 'actoren', 'toren', 'ton']
>>> producten('SCHOUDERTAS', ['Ta', 'SC', 'H', 'Er', 'S'])
['SCHOUDERTAS', 'SCHOUDERS', 'HOUDERS', 'OUDERS', 'OUDS', 'OUD']
>>> producten('BEsPROeierS', ('S', 'Be', 'er', 'o', 'S', 'I'))
['BEsPROeierS', 'BEsPROeier', 'sPROeier', 'sPROei', 'sPRei', 'PRei', 'PRe']
>>> producten('Overgetekende', ['gE', 'O', 'tE', 'v', 'Er', 'k', 'n'])
['Overgetekende', 'Overtekende', 'vertekende', 'verkende', 'erkende', 'kende', 'ende', 'ede']
Waaraan stierf Edgar Allan Poe1?
Op 3 oktober 1849 werd Poe op straat aangetroffen in Baltimore. Hij ijlde en droeg kleren die niet van hem waren. De man die hem vond, zei dat hij
in grote nood verkeerde en … onmiddellijk hulp nodig had.
Poe bleef verward en stierf vier dagen later. Hij werd slechts 40 jaar oud.
Een kennis zei dat het dronkenschap was, maar hij bleek een aanhanger van de drankbestrijding te zijn die de feiten verdraaide. De behandelende arts schreef dat
… Edgar Allan Poe niet gestorven was onder invloed van een bedwelmend middel, en dat er ook geen dranklucht te bespeuren viel in zijn adem of rond zijn lichaam.
Wat dan wel? Andere theorieën zijn een zeldzame hersenziekte, diabetes, ijzertekort, syfilis en zelfs hondsdolheid. Een theorie uit 1872 suggereert dat Poe's dood het gevolg was van cooping2, een vorm van verkiezingsfraude waarbij burgers gedwongen werden om op een bepaalde kandidaat te stemmen, wat soms leidde tot geweld en zelfs moord.
Er bestaat geen overlijdensakte, dus we zullen het nooit echt weten. Vandaag ligt Poe op het kerkhof van de Westminster Presbyterian Church3 in Baltimore, waar het mysterie hem zelfs in zijn dood achtervolgt: sinds 1949 bezoekt een mysterieuze man het graf in de vroege uren van de verjaardag van de dichter: 19 januari. Getooid in een zwart gewaad en voorzien van een wandelstok met zilveren punt, knielt de Poe Toaster4 bij het graf en brengt een toast uit met Martell cognac5. Hij laat de halflege fles en drie rode rozen achter. Verschillende van die Martell-flessen worden bewaard in het Edgar Allan Poe House and Museum6 in Baltimore.