A programozás alapfogalmai



Hasonló dokumentumok
Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Gráfelmélet II. Gráfok végigjárása

Gyakorlatok. P (n) = P (n 1) + 2P (n 2) + P (n 3) ha n 4, (utolsó lépésként l, hl, u, hu-t léphetünk).



3. Strukturált programok

SZÉCHENYI ISTVÁN EGYETEM MŰSZAKI TUDOMÁNYI KAR RENDSZERELEMZÉS I.

Szeminárium-Rekurziók

Halmazok. Halmazelméleti lapfogalmak, hatványhalmaz, halmazm veletek, halmazm veletek azonosságai.

Gyakorló feladatok ZH-ra


TERMELÉSMENEDZSMENT. Gyakorlati segédlet a műszaki menedzser szak hallgatói számára. Összeállította: Dr. Vermes Pál főiskolai tanár 2006.

Kombinatorika évfolyam. Szerkesztette: Surányi László Ábrák: Hraskó András december 6.

Analízis lépésről - lépésre

A MEGBÍZHATÓSÁGI ELEMZŐ MÓDSZEREK

MATEMATIKA ÍRÁSBELI ÉRETTSÉGI-FELVÉTELI FELADATOK május 19. du. JAVÍTÁSI ÚTMUTATÓ

MUNKAANYAG. Szabó László. Szilárdságtan. A követelménymodul megnevezése:

MATEMATIKA C 9. évfolyam

19. Hasításos technikák (hash-elés)

3. Konzultáció: Kondenzátorok, tekercsek, RC és RL tagok, bekapcsolási jelenségek (még nagyon Béta-verzió)

1 Rendszer alapok. 1.1 Alapfogalmak

Analízisfeladat-gyűjtemény IV.

Egyszerű programozási tételek

Lineáris programozás. Modellalkotás Grafikus megoldás Feladattípusok Szimplex módszer

Egy egyszerű ütemezési probléma megoldásának tanulságai

43. ORSZÁGOS TIT KALMÁR LÁSZLÓ MATEMATIKAVERSENY MEGYEI FORDULÓ HETEDIK OSZTÁLY JAVÍTÁSI ÚTMUTATÓ

23. Kombinatorika, gráfok

2. gyakorlat Állapot alapú modellezés Megoldások

Beadható feladatok december Add meg az alábbi probléma állapottér-reprezentációját!

Terület- és térségmarketing. /Elméleti jegyzet/

PROGRAMOZÁS 1. kötet TERVEZÉS

ADATBÁZISKEZELÉS ADATBÁZIS

ÍRÁSBELI KIVONÁS. 31. modul. Készítette: KONRÁD ÁGNES

int azt az elõzõ részbõl megtudtuk, a rétegeknek az a feladatuk, hogy valamiféle feladatot végezzenek

Az élet szép, környezetünk tele van fákkal, virágokkal, repdeső madarakkal, vidáman futkározó állatokkal.

SCHERMANN ZSOLT TDK DOLGOZAT

6. AZ EREDMÉNYEK ÉRTELMEZÉSE

FRAKTÁLOK ÉS A KÁOSZ

KOVÁCS BÉLA, MATEMATIKA I.

Gráfokkal megoldható hétköznapi problémák

Szervizutasítás. Logamatic Szabályozókészülék. Szakemberek számára. Üzembe helyezés és szervizmunkák előtt, kérjük, figyelmesen olvassa el.

SZOLGÁLTATÁSI FOLYAMATOK LOGISZTIFIKÁLÁSÁNAK MATEMATIKAI MODELLJE MATHEMATICAL MODELL OF THE LOGISTIFICATION OF SERVICE FLOWS

OPERÁCIÓKUTATÁS, AZ ELFELEDETT TUDOMÁNY A LOGISZTIKÁBAN (A LOGISZTIKAI CÉL ELÉRÉSÉNEK ÉRDEKÉBEN)

Matematikai és matematikai statisztikai alapismeretek

6. előadás PREFERENCIÁK (2), HASZNOSSÁG

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Geometria I.

Következõ: Lineáris rendszerek jellemzõi és vizsgálatuk. Jelfeldolgozás. Lineáris rendszerek jellemzõi és vizsgálatuk

Matematikai statisztikai elemzések 5.

9. Entitás modulok. Nagy Gusztáv: Drupal 7 alapismeretek Fejlesztői verzió: október 6.


Soukup Dániel, Matematikus Bsc III. év cím: Témavezető: Szentmiklóssy Zoltán, egyetemi adjunktus


Intelligens robotok. Előadás vázlat. 1 előadás

PHP5 Új generáció (2. rész)

Az 5-2. ábra két folyamatos jel (A és B) azonos gyakoriságú mintavételezését mutatja ábra

DUMASZÍNHÁZ, FÉNYFESTÉS ÉS SÁRKÁNYHAJÓZÁS VISSZAESÉS A RENDEZVÉNYPIACON

Komputer statisztika gyakorlatok

JANUS PANNONIUS TUDOMÁNYEGYETEM. Schipp Ferenc ANALÍZIS I. Sorozatok és sorok

OBJEKTUMORIENTÁLT TERVEZÉS ESETTANULMÁNYOK. 2.1 A feladat

Parciális differenciálegyenletek numerikus módszerei számítógépes alkalmazásokkal Karátson, János Horváth, Róbert Izsák, Ferenc

FELADATOK ÉS MEGOLDÁSOK

A lineáris tér. Készítette: Dr. Ábrahám István

ÖSSZEFOGLALÓ. a mikro-, kis- és közép vállalkozások munkavédelmi helyzetképének (profiljának) felmérése tárgyban végzett tájékozódásról

OPERÁCIÓS RENDSZEREK II GYAKORLAT

MATEMATIKA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ

Hraskó András, Surányi László: spec.mat szakkör Tartotta: Surányi László. Feladatok

AZ EURÓPAI KÖZÖSSÉGEK BIZOTTSÁGA A BIZOTTSÁG KÖZLEMÉNYE A TANÁCSNAK

DÖNTÉSI MODELL KIALAKÍTÁSA KÖZBESZERZÉSI ELJÁRÁS SORÁN ELŐSZÓ

KÖZGAZDASÁGTAN ALAPJAI

Számítástudomány matematikai alapjai segédlet táv és levelező

Közbeszerzési referens képzés Gazdasági és pénzügyi ismeretek modul 1. alkalom. A közgazdaságtan alapfogalmai Makro- és mikroökonómiai alapfogalmak


Bevezetés 2. Aggregált terv készítése (esettanulmány) 3. Megoldás 3. Aggregált termelési terv összeállítása 8. Érzékenységvizsgálat 12

IFJÚSÁG-NEVELÉS. Nevelés, gondolkodás, matematika

NEPTUN_TÖRZS. (Funkcionális leírás)

Szociális tulajdonrészt!

Véletlenszám generátorok

EMELT SZINTŰ ÍRÁSBELI VIZSGA


XIII. KERÜLET HOSSZÚ TÁVÚ FEJLESZTÉSI KONCEPCIÓ


PÉLDATÁR KÖLTSÉGVETÉSI SZERVEK SZÁMVITELE MEGFELELT SZINT 50%

A két csapatra osztás leggyakoribb megvalósításai: Lyukas teli (vagy sima vagy nem lyukas)

Adatbázisok I Adatmodellek komponensei. Adatbázis modellek típusai. Adatbázisrendszer-specifikus tervezés

Üzemeltetési utasítás

Az alap- és a képfelület fogalma, megadási módjai és tulajdonságai

Óvoda-átadás május 27.

Logisztika (KOKUM207) 1. Az anyagmozgató rendszerek szerepe a logisztikai rendszerben


15/2001. (VI. 6.) KöM rendelet. az atomenergia alkalmazása során a levegbe és vízbe történ radioaktív kibocsátásokról és azok ellenrzésérl

FAUR KRISZTINA BEÁTA, SZAbÓ IMRE, GEOTECHNIkA

2012 Légkondicionálók

Scherlein Márta Dr. Hajdu Sándor Köves Gabriella Novák Lászlóné MATEMATIKA 1. MÓDSZERTANI AJÁNLÁSOK MÁSODIK FÉLÉV

Szervizutasítás szakemberek számára



MATEMATIKA PRÓBAÉRETTSÉGI MEGOLDÓKULCS EMELT SZINT

13. fejezet: A 6. fejezetben (A függvényábrázolás alapjai) Ön megtanulta, hogyan kell definiálni és ábrázolni a függvényeket. kiíratható.

MATEMATIKA A 10. évfolyam

MŰANYAGOK FELDOLGOZÁSA

STECKVORRICHTUNGEN & IPARI CSATLAKOZÓK ÉS DEKONTAKTOROK. Steckvorrichtungen + DEKONTAKTOREN Dekontaktoren. ISV Industrie Steck-Vorrichtungen GmbH

Átírás:

A programozás alapfogalmai Ahhoz, hogy a programozásról beszélhessünk, definiálnunk kell, hogy mit értünk a programozás egyes fogalmain. Ha belegondolunk, nem is olyan könnyű megfogalmazni, mi is az a program, vagy hogy mikor old meg egy program egy feladatot. Amikor programot írunk, általában egy a külvilágban adott feladatot akarunk számítógéppel megoldani. Ehhez kiválasztjuk a külvilág azon elemeit, amelyek kapcsolódnak a feladathoz, és megpróbáljuk elkészíteni ezeknek az elemeknek egy számítógépes modelljét. Ám a számítógépek változnak! Ezért a továbbiakban bevezetünk egy absztrakt modellt, amelyben leírjuk azokat fogalmakat, amelyek a programozás során előkerülnek, és e modell segítségével a gyakorlatban használható eszközöket adunk. 2.1. Az állapottér fogalma Az elsőként bevezetendő absztrakt fogalom tulajdonképpen a számítógép memóriájának ad egy a továbbiakban kényelmesen használható megfelelőt. 1. DEFINÍCIÓ: ÁLLAPOTTÉR Legyenek tetszőleges véges vagy megszámlálható nem üres halmazok. Ekkor az halmazt állapottérnek, az halmazokat pedig típusértékhalmazoknak nevezzük. Amikor egy modellt készítünk, el kell döntenünk, hogy a valóság mely részét kívánjuk modellezni, és melyek azok a jellemzők és milyen értékeket vehetnek fel amiket a modellünkben figyelembe akarunk venni. 19

20 2. A PROGRAMOZÁS ALAPFOGALMAI Az állapottér fenti definíciójában az egyes komponenseket tekintsük úgy, mint egyes jellemzők lehetséges értékeinek halmazát. A típusértékhalmaz elnevezés arra utal, hogy ezek a halmazok bizonyos közös tulajdonsággal rendelkező elemekből állnak. A későbbiekben majd kitérünk arra is, hogy ez a közös tulajdonság mit is jelent. Mivel a jellemzők értékhalmaza lehet azonos, az állapottér komponensei között egy halmaz többször is szerepelhet. 2.2. A feladat Az állapottér fogalmának segítségével könnyen megfogalmazhatjuk, hogy mit értünk programozási feladaton. Azt kell megfogalmaznunk, hogy a memória egy adott állapotából (azaz az állapottér egy pontjából) milyen memóriaállapotba (azaz az állapottér mely pontjába) akarunk eljutni. 2. DEFINÍCIÓ: FELADAT Feladatnak nevezzük az relációt. A feladat fenti definíciója, ha belegondolunk, természetes módon adódik, hiszen a feladatot legegyszerűbben úgy formalizálhatjuk, ha a feladatot egy leképezésnek tekintjük az állapottéren, és az állapottér minden pontjára megmondjuk, hogy hova kell belőle eljutni. Az, hogy egy feladatnak mi lesz az állapottere, természetesen magától a feladattól függ, ám még a feladat ismeretében sem egyértelmű. Például egy pont síkbeli koordinátáit megadhatjuk a derészögű koordináta-rendszerben, de megadhatjuk polárkoordinátákkal is. Mégis, az, hogy mit választunk állapottérnek, nagyon fontos dolog, hiszen meghatározza, hogy a továbbiakban mit, és hogyan tudunk leírni. Ha túl kevés jellemzőt vizsgálunk azaz az állapottér túl kevés komponensből áll akkor lehetnek olyan fogalmak, amiket nem tudunk benne leírni, ha túl sok a komponens, akkor túl bonyolult lesz a modell. 2.3. A program Ha a gyakorlatban azt mondjuk, egy program fut, akkor amögött azt értjük, hogy a számítógép memóriájának tartalma folyamatosan változik. A programfutás tehát egy időben dinamikus folyamat. Vezessünk be egy könynyebben kezelhető statikus modellt! Hogyan kaphatunk egy ilyen statikus modellt? Tekintsük például az alábbi a programozástól igazán messze eső problémát: Adott egy kémiai kísérlet, amely túl gyorsan játszódik le ahhoz, hogy az ember pontosan regisztrálni tudja az egymásutáni eseményeket. Ez a programfutáshoz hasonlóan egy időben dinamikusan lejátszódó folyamat. Hogyan követhető nyomon mégis a kísérlet? Például úgy, hogy a kísérletet filmre vesszük, és a továbbiakban a képkockák által rögzített statikus állapotokat vizsgáljuk. Így az időben változó folyamatot egy statikus állapotsorozattal írjuk le.

2.4. A PROGRAMFÜGGVÉNY 21 A fenti példa szemléletesen mutatja, hogyan adhatunk statikus modellt egy dinamikus folyamat leírására. A program definíciójában a program időbeni futásának jellemzésére az előbbi páldával analóg módon vezetünk be egy statikus modellt: a futást állapottérbeli sorozatokkal írjuk le. Ahogy a program futása során a memóriatartalom változik, úgy jutunk az állapottér újabb és újabb pontjaiba, így ezeket a pontokat egy sorozatba fűzve valójában "filmre vesszük" a programfutást. 3. DEFINÍCIÓ: PROGRAM Programnak nevezzük az! "#" relációt, ha 1. $&%', 2. (*)+,.-/(102+3546)87-90 ), 3. (*02+;:;%<- 0=?> @BAC4D0E7. Az absztrakt program értékkészlete olyan sorozatokat tartalmaz, amelyek a konkrét program egy végrehajtását jellemzik. A fenti megszorítások értelemszerűek: az első azt kívánja meg, hogy a program futását jellemző sorozat abból a pontból induljon el, amihez hozzárendeltük. A programnak tetszőleges állapotból el kell indulnia, hiszen egy program és annak sincs értelme, hogy a program egy állapotban egymás után véges sokszor lehessen (a program áll?). 2.4. A programfüggvény Ahhoz, hogy egy program és egy feladat viszonyát megvizsgáljuk, elegendő, ha a programról tudjuk, hogy az állapottér egy adott pontjából kiindulva, az állapottér mely pontjába jut, mert a megoldás szempontjából a közbülső állapotok lényegtelenek. Természetesen vannak olyan a programok minőségére vonatkozó további kritériumok, amelyek szempontjából egyáltalán nem mindegy, hogy a program hogyan oldja meg a feladatot (ilyen lehet például a hatékonyság, program idő- és tárigénye), de mi a továbbiakban ezekkel egyelőre nem foglalkozunk. Ezért vezetjük be a programfüggvény fogalmát, amely tehát csak a program futásának eredményét jellemzi. 4. DEFINÍCIÓ: PROGRAMFÜGGVÉNY A FG4HI7J! reláció az J "#" program programfüggvénye, ha 1. $K L %NM OB)P+!QB54D)R7SJ "UT, 2. FV46I74D)R7I!O W+<!QXY0Z+<54D)R7S-U[\460V7?W T. Az első követelmény azt fogalmazza meg, hogy csak azokban a pontokban van értelme azt vizsgálni, hogy hova jut egy program, ahonnét kiindulva a program nem "száll el". A második pont értelemszerűen azt írja le, hogy ahova a program eljut, az a sorozat utolsó eleme. A programfüggvény elnevezés megtévesztő lehet, hiszen egy program programfüggvénye nem feltétlenül függvény, sőt az sem biztos, hogy determinisztikus reláció

) 22 2. A PROGRAMOZÁS ALAPFOGALMAI (parciális függvény). Történeti megfontolások alapján azonban mégis megtartottuk ezt az elnevezést. 2.5. Megoldás Vegyük észre, hogy a programfüggvény ugyanolyan típusú reláció mint a feladat volt. Így tehát a programfüggvény fogalmának bevezetésével lehetőségünk nyílik arra, hogy kapcsolatot teremtsünk egy adott feladat és egy adott program között. Természetesen ennek a kapcsolatnak azt kell leírnia, hogy mikor mondjuk egy programról azt, hogy megold egy adott feladatot. 5. DEFINÍCIÓ: MEGOLDÁS Azt mondjuk, hogy az program megoldja az feladatot, ha 1. $^]$K/L %9M, 2. (1)+,$ ] -_FG4HI7_46)8754D)R7. Ezzel a definícióval végül is azt kívánjuk meg, hogy az állapottér olyan pontjaihoz, ahol a feladat értelmezve van, a program csak véges sorozatokat rendeljen (termináljon) és a sorozatok végpontjait a feladat hozzárendelje a kezdőponthoz. $K L %NM $ ] 4D)R7 FV46I74D)R7 2.1. ábra. Megoldás 2.6. Példák 1. példa: Legyen `ONa #b T 1 O9a9 b T c d!ona #br feg ihc j T Y kl * G d. mno84i4d)c #W/ fo7_ 46Ag @9 #p*7i7^qcp!q)pr`w T g4sa9 a ab7p? Hány olyan pontja van az állapottérnek, amelyekhez a feladat ugyanazt rendeli, mint az 4sa9 a9 ab7 -hez?

~ 2.6. PÉLDÁK 23 Megoldás: 4sa9 a9 ab7ton4ia a9 b97u 4ia #br b97u B46bR a #b 7u B46bY br #b 7 T Mivel a feladat hozzárendelése nem függ az állapottér harmadik komponensétől, a feladat ugyanezeket a pontokat rendeli az összes 4ia a #v 7 alakú ponthoz. Más pontokhoz viszont nem rendelheti ugyanezeket a pontokat, mert akkor az összeg nem lehetne b! Tehát öt olyan pontja van az állapottérnek amelyhez a feladat ugyanazt rendeli, mint az 4sa9 a9 ab7 -hez. 2. példa: Legyen k`ona #br feg ihc j T =!, "#". 2O 4sa Bwsa/b jra/xi7_ 4sa9 wsah9enj b xf7u 4ia wiaenbsixi7u y46by w6byabxf7u 46bR Bw6bUhNxi7_ 4Deg wde9e e9e e ezxi7_ {4Dhg wdhga/jrah8xi7_ 4 hc w hneya/b jra/xi7_ 4 hg Bw hcabj h8b xf7u }46jY w6j9b h8xi7u 4HjR whjue hnxi7_ 46jY w6j9bue hnxi7 T!O846bR ab7*4hbr fhn7*4dhg a/7*4 hc b97*4 hc j 7 T. a) Adjuk meg FG4HI7 -t! b) Megoldja-e a feladatot? Megoldás: a) Mivel a program az a -hez és a e -hoz végtelen sorozatot is rendel, a programfüggvény értelmezési tartománya: $K L %NM O/bY ihg #j T Ekkor a programfüggvény: FV46I7ION4HbR a/7u B46bR fhn7_ 4 hc ih87u 4Dhg ab7u B4 hc b 7_ 4HjR ih87 T b) A megoldás definíciója két pontjának teljesülését kell belátnunk. $ ]!O br ih T O/bY ihg #j T J$K L %NM. ~~ EFV46I746b 7IO9a9 ih T O9a fh T?4Hb 7, FV46I74 hn7iohc a9 b T ONa #br j T 4 h87u tehát az program nem megoldása az feladatnak. " T " T 3. példa: Fejezzük ki a programok uniójának programfüggvényét a programok programfüggvényeivel! Megoldás: Legyenek / #* ƒ, "#" programok. Ekkor a programfüggvény értelmezési tartományának definíciójából kiindulva: $K L % i R% im OB)+ `QfFV46 t 7_46)875 OB)+ `QfFV46 7_4D)R7S " ˆ FG46 7_46)R7S $K L %9 zm1š $K L % M Legyen )P+;$K/L % sm1š $K/L % fm. Ekkor FV46 \ 7_46)R7 OB[\4D0E7QB0Œ+Œ4H * B74D)R7 T OB[\4D0E7QB0Œ+3 U4D)R7\,0Œ+<* N4D)R7 T FV46 7_4D)R7 FV46* B7_4D)R7_

~ 24 2. A PROGRAMOZÁS ALAPFOGALMAI 4. példa: Legyen t és V egy-egy feladat ugyanazon az állapottéren! Igaz-e, hogy ha minden program, ami megoldása t -nek, az megoldása V -nek is, és minden program, ami megoldása G -nek, az megoldása E -nek is, akkor t és G megegyeznek? Megoldás: A leggyakoribb hiba, amit ennek a feladatnak a megoldásakor el szoktak követni, az az, hogy összekeverik az állítás feltételrendszerét magával a bizonyítandó állítással, és azt próbálják bebizonyítani, hogy valamelyik feladatnak minden program megoldása. Természetesen általában ez nem igaz, de nem is ez a feladat! Abból kell tehát kiindulnunk, hogy pontosan ugyanazok a programok oldják meg mindkét feladatot, és meg kell vizsgálnunk, hogy következik-e ebből az, hogy a két feladat megegyezik. Induljunk ki abból, hogy minden program, ami megoldása -nek, az megoldása -nek, és válasszunk egy olyan programot, amelynek programfüggvénye megegyezik az relációval. Ekkor a választott program triviálisan megoldja az feladatot, tehát meg kell oldania -t is, azaz: Ž$ ]9 Z$ ]N ~~ (1)+,$ ] - t U46)R7SV 946)R7 Most felhasználva, hogy minden program, ami megoldása V -nek, az megoldása t - nek is, és egy olyan program választásával, amelynek programfüggvénye megegyezik -vel, az előzőekkel analóg módon adódnak a fordított irányú állítások: ~~H~ $^] $^] ~ m(*)+'$^] - 4D)R7 4D)R7_ Az ~ és ~~~ állításokból következik, hogy a két feladat értelmezési tartománya megegyezik, míg az ~~ és ~ állítások garantálják, hogy ezen közös értelmezési tartomány egyes pontjaihoz mindkét feladat ugyanazokat a pontokat rendeli, azaz E?G. 5. példa: E V. Az program megoldja V -t. Igaz-e, hogy megoldja t -et is? Megoldás: Próbáljuk meg bebizonyítani az állítást. Ehhez a megoldás definíciója két pontját kell belátnunk. ~ $ ]N $K L %NM, ~~ I(*)P+;$ƒ] -_FG4HI7_46)R7J 46)R7. Az ~ pont teljesülése könnyen látható, ugyanis megoldása V -nek, tehát $ ]8 Z$ ] $K/L %9M Az ~H~ pont bizonyításánál azonban gond van, hiszen az alábbi két állítás áll rendelkezésünkre: (*)+,$^] - FV46I74D)R7J 46)R7u (*)+,$ ]N -qt 46)875V 946)87_ és ezekből a kívánt állítás nem bizonyítható. Elakadtunk a bizonyításban, lehet, hogy nem igaz az állítás? Készítsünk ellenpéldát felhasználva azt, hogy hol akadtunk el a bizonyításban!

2.7. FELADATOK 25 Legyen!ONa b T, t `O84sa ab7 T, V!O84sa ab7_ 4sa9 b97 T és FG4HI7 egyezzen meg az V feladattal. Ekkor triviálisan megoldja V -t, de nem megoldása t -nek, ui. Tehát az állítás nem igaz. aƒ+;$ ]N ˆ FG4HI7_4iaB7IG N4sa/7I`O9a9 b T ko9a T?E 4sa/7u 2.7. Feladatok 1. Legyen O/ u # u f T 2J "#". 2O 46 wh G 5xf7u 46 wh ƒ Gxf7u 46 wh ƒ #xi7_ wh S 5xf7u wh ƒ xf7u wh ƒ ƒ ƒ ƒ ƒ sxi7_ wh S V xi7_ wh ƒ V 5xi7_ wh S E ƒ Sxi7_ I w6 V 5 xf7u I w6 V xf7u I w6 V 5 5xf7 T!ON4 57*4 # 7*4 57*4 # S7*4 # 7 T. a) Adjuk meg FV46I7 -t! b) Megoldja-e a feladatot? 2. Legyen program, olyan feladat, hogy megoldása -nek. Igaz-e, hogy a) ha nem determinisztikus, akkor sem az? b) ha determinisztikus, akkor is az? c) ha nem determinisztikus, akkor FG4HI7 sem az? d) ha FG4HI7 determinisztikus, akkor is az? e) ha determinisztikus, akkor FG4HI7 is az? f) ha nem determinisztikus, akkor FG4HI7 sem az? 3. Igaz-e, hogy FG46 7 értelmezési tartománya éppen " ősképe -re nézve? 4. Mondhatjuk-e, hogy az program megoldja az feladatot, ha igaz a következő állítás: š +'$ ]Z 54 š 7J " ˆ FG46 7_4 š 75J4 š 7u 5. Legyenek és \ programok, pedig egy feladat egy tetszőleges közös állapottéren. Teggyük fel továbbá, hogy * és * megoldja az feladatot. Igaz-e, hogy megoldja -et? T ˆ T 6. Legyen œk,œ, t U fv ƒ. E!ON4f4 V 7u 4Dž fÿr7f7sq=ÿ*q,!on4f4 V 7u 4Dž fÿr7f7sqž;? Ÿ\Q. Ugyanaz-e a két feladat? (Van-e valamilyen összefüggés közöttük?)

26 2. A PROGRAMOZÁS ALAPFOGALMAI 7. J `,., * programok -n. Az és az * is megoldja az feladatot. Igaz-e, hogy az Œ 46 * B7 program is megoldja az feladatot? 8. Tekintsük a következő szövegesen megadott feladatot: Adott egy sakktábla, és két rajta lévő bástya helyzete. Helyezzünk el a táblán egy harmadik bástyát úgy, hogy az mindkettőnek az ütésében álljon! Készítsük el a modellt: írjuk fel az állapotteret és az relációt! 9. Tudjuk, hogy megoldja -et (az állapottéren). Igaz-e, hogy 4D)P+ ˆ 464D)R7 J " FG4HI7_46)R7 J46)87f7i7 ) +;$ ] 10. Legyen! egy feladat és!; "#" egy program. Jelöljük ƒ -vel azt a relációt, amely és FV46I7 metszeteként áll elő. Igaz-e, hogy a) ha $ ] $ ], akkor megoldja -et? b) ha megoldja -et, akkor $ ]\ J$ ]?