A 2002-2003 tanévi 11-12-es FPI tehetséggondozó szakkör 18. foglalkozása
Kódok
Összeállította Hraskó András és Szőnyi Tamás
4. szakkör
Folytattuk a Kódok feladatgyűjtemény feldolgozását, leginkább az 5.9. feladattal foglalkoztunk. Menet közben megismerkedtünk a lineáris kód fogalmával, és több példán is láttuk, hogyan lehet 1-hiba javító lineáris kódot konstruálni.
Házi feladatnak a múlt óráról megmaradt: hétszögminták, 13-as totó, új példák: 5.11, fizetős barkochba.
5.9 Most is az 1, 2, 3, ...16 számok közül kell kitalálni egyet barkochba kérdésekkel. Kérdéseinket előre le kell írni és nincs befolyásunk arra, hogy a gondoló milyen sorrendben nézi és válaszolja meg azokat.[1] Hány kérdéssel tudjuk biztosan kitalálni a gondolt számot, ha várhatóan egyszer (legfeljebb egyszer) téves választ kapunk?
Megoldás
(Alsó korlát)
Tegyük fel, hogy k előre leírt kérdéssel ki lehet találni a gondolt számot.
Tekintsük ezt a k kérdést, és válasszuk ki a 16 szám egyikét, mintha az
lenne a gondolt szám. Válaszoljuk meg a k db kérdést hazugság nélkül.
Írjunk 0-t az "igen", 1-est a "nem" válasz helyett. Így egy
k hosszúságú 0-1 sorozatot kapunk, amit a kiválasztott szám kódjának
fogok nevezni. Ha a válaszoló egyszer hazudik, akkor nem a szám kódját kapjuk,
hanem egy olyan sorozatot, amely egy helyen különbözik a szám kódjától. Az
ilyen sorozatokat a szám álkódjának fogom nevezni. Álkódból éppen k
darab van, mert a k kérdésből egyre kaphatunk rossz választ, és
mindegyik kérdésre egyféle rossz választ kaphatunk. A 16 számhoz 16 kód és 16k
álkód tartozik. Ezeknek mind különbözőeknek kell lennie, mert ha volna közös
elemük, akkor az annak a 0-1 sorozatnak megfelelő válaszok esetén nem tudnánk
kitalálni a gondolt számot. Összesen 2k darab k hosszú
0-1 sorozat van, így biztosan teljesül a 16·(k+1) ≤
2k egyenlőtlenség. A két oldal értékét k = 1, 2, ... esetén
táblázatban írom fel.
k | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
16· (k+1) | 32 | 48 | 64 | 80 | 96 | 112 | 128 | 144 |
2k | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 256 |
I. konstrukció
("Mohó algoritmus")
7 előre leírt kérdéssel megoldható a feladat.
Ennek igazolásához
16 db olyan 7 hosszúságú 0-1 sorozatot kell megadni, amelyek közül bármelyik
kettő legalább három helyen eltér egymástól. Ebből ugyanis következik, hogy a
16 kód és 16·7 álkód mind különböző lesz: ha két
különböző kódhoz tartozó álkód megegyezik, akkor a két kód csak két helyen tér
el egymástól.
Mohó algoritmussal dolgozunk. A 0000000 sorozattól kezdve a lexikografikusan
legkisebb olyan sorozatot keressük, amelyik mindegyik korábban már kiválasztott sorozattól legalább 3 helyen különbözik. Az
eredményül kapott 16 db 0 - 1 sorozat
az alábbi táblázat oszlopaiban található:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | |
1. sor | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
2. sor | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
3. sor | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 |
4. sor | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 |
5. sor | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
6. sor | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 1 |
7. sor | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 |
1. kérdés: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | ||||||||
2. kérdés: | 1 | 2 | 3 | 4 | 9 | 10 | 11 | 12 | ||||||||
3. kérdés: | 1 | 2 | 5 | 6 | 9 | 10 | 13 | 14 | ||||||||
4. kérdés: | 1 | 2 | 7 | 8 | 11 | 12 | 13 | 14 | ||||||||
5. kérdés: | 1 | 3 | 5 | 7 | 9 | 11 | 13 | 15 | ||||||||
6. kérdés: | 1 | 3 | 6 | 8 | 10 | 12 | 13 | 15 | ||||||||
7. kérdés: | 1 | 4 | 5 | 8 | 10 | 11 | 14 | 15 |
II. konstrukció
(Algebra I.)
Az 5.8 b) feladatra adott II. konstrukcióra építve az 1.2 feladat IV. megoldásának
mintájára dolgozunk.
Legyen (n-1)
kettes számrendszerbeli alakja x8x4x2x1
(ahol n befutja az {1, 2, ..., 16} halmazt, míg xi értéke 0 vagy 1). Ebben a megközelítésben az 5.8 b) feladatra adott II. konstrukció
kérdései így írhatók:
Megjegyzés: mutassuk meg, hogy az I. konstrukcióban megadott kérdések is megfogalmazhatók a II. konstrukcióban adott algebrai alakban!
III. konstrukció
(Algebra II., Hamming kód)
Az I. konstrukció gondolatmenete alapján, de a II. konstrukcióban szereplő algebrai
módszerhez hasonló megoldást keresünk.
16 db olyan hét hosszúságú 0 - 1 sorozatot kell megadni, amelyek közül bármelyik kettő
legalább három helyen eltér egymástól. Szeretnénk ezeket a sorozatokat egy
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | |
y1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
y2 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
y3 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 |
y4 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
y5 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 |
y6 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 1 |
y7 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 |
Megjegyzés:
Az előbb látottak alapján új konstrukciót adunk a múlt órai 4.6, 5.6
példákhoz. Most tehát háromféle jelünk van, pld 0, 1, 2 és négyes sorozatokat
kell gyártanunk. Számoljunk mod 3 (tehát 2 = -1), és keressünk olyan
IV. konstrukció
(Négyzetminta)
Térjünk
vissza a "Négyzetminta" feladathoz, az előző
foglalkozás első példájához! Egész számok helyett számoljunk binárisan
(mod 2), azaz a "páros" és "páratlan" szavakat 0 és 1
helyettesítse! A négyzet csúcsaihoz írt 8 számot 16-féleképpen adhatjuk meg,
hiszen a csúcsokhoz először írt egy-egy szám összesen 24-féle lehet
és ezek már meghatározzák a további négy számot. Így tehát összesen 16 db 0-1
sorozatot kapunk, amelyek egy lineáris halmazt alkotnak, azaz a 16 közül bármelyik
két sorozat összege (természetesen koordinátánként és mod 2 értve) is a 16
sorozat között van. A "Négyzetminta" feladatban azt láttuk, hogy e
sorozatokban 0, 4 vagy 8 db 1-es lehet, tehát a 16 sorozat egy olyan lineáris
kódot alkot, amelynek minimális távolsága 4. Ha a nyolcelemű sorozatok egyik,
pld az utolsó elemét mindegyikben elhagyjuk, akkor 16 olyan hételemű 0-1 sorozatot
kapunk, amelyek közül bármelyik kettő Hamming távolsága legalább 3. Az I. konstrukció
elején leírtak szerint éppen ilyen sorozatokat kerestünk.
Végül két levezető feladat:
Jó-30-as
Az egész számok egy I30
részhalmazát "jó 30-as"-nak nevezzük, ha teljesülnek rá az alábbi
feltételek:
1. Ha h I30-ban van és n tetszőleges egész szám, akkor nˇh
is I30-ban van.
2. Ha h1 és h2 is I30-ban van, akkor I30-ban van
h1 + h2 is.
3. A 30 benne van I30-ban.
Az egész számok halmazának hány "jó 30-as" részhalmaza van?
Megoldás Az 1. - 2. tulajdonságokból következik, hogy jó 30-as halmazban lehet maradékosan osztani, azaz, ha h1 I30-ban van és h2 is I30-ban van és h1 = nˇh2 + m ahol n, m egész számok, akkor m is I30-ban van. Legyen k egy jó 30-as halmaz (egyik) legkisebb abszolút-értékű, de 0-tól különböző eleme. (Ilyen elem biztos van, hiszen 30 benne van a halmazban, így csak az 1, 2, ... 30 eseteket kell végignézni.) Ekkor k minden többszöröse is a jó 30-as halmazban van, de más elem nem is lehet a halmazban, mert a maradékos osztás k-nál kisebb abszolút-értékű elemet eredményezne. Tehát minden jó 30-as halmaz egy elem összes többszöröséből áll. 30 pontosan akkor lesz egy ilyen halmaznak eleme, ha a szóbanforgó elem 30 osztója. 8 megfelelő halmaz van, ezek rendre 30, 15, 10, 6, 5, 3, 2, 1 összes többszöröseiből állnak.
Pénzesbarkochba Az 1, 2, 3, ... 16 számok közül kell kitalálni egyet barkochba kérdésekkel. A válaszokért fizetnünk kell: az IGEN válaszért 1 Ft-ot, a NEM válaszért 2-t. Legalább hány Ft-ra van szükség ahhoz, hogy biztosan kitaláljuk a gondolt számot? Erdős Gábor tanár úrtól hallottam
Ez a feladat házi feladatnak maradt.
További gondolkodnivalók:
Még a múltkori óráról:
Hétszögminták
Ebben a feladatban egy
szabályos hétszög csúcsaira írunk 0-t vagy 1-et. Összesen 27=128
ilyen kitöltés van. A kitöltések egy I7 részhalmaza "7-szögre
ideális", ha
1. Ha h az I7-ben van, akkor h bármely (n·360°/7-kal
való) elforgatottja is I7-ben van.
2. Bármely két I7-beli kitöltés csúcsonként és mod 2 számított összege
is I7-ben van.
A kitöltéseknek hány "7-szögre ideális" részhalmaza van?
13-as totó "Adjunk meg" 59049 szelvénykitöltést a 13 mérkőzésből álló totón úgy, hogy biztosan legyen olyan szelvényünk, amely legalább 12 találatos!
Új feladat:
5.11 Egy kém az ellenséges ország televíziójánál dolgozik. Esténként alkalma van az adásba kerülő 8×8-as fekete fehér tábla egyetlen mezőjének színét megváltoztatni. Nem feltétlenül szükséges változtatnia. Sajnos sohasem tudja előre, hogy milyen mintázatú lesz a 64 mező, amikor eléje kerül. Hányféle információt tud így küldeni a TV-n keresztül? Juhász Istvántól és Szegedy Balázstól is hallottam
[1] Ezzel az "Előző válaszod igaz volt?" - típusú kérdéseket akarjuk kiszűrni. Tehát kérdés nem vonatkozhat a válaszok igazságtartalmára.