Tartalom
Ebben a fejezetben a programozás legfontosabb alapfogalmai vezetjük be. Nagyon fontos szempont, hogy figyelmünket nem a programok tulajdonságainak vizsgálatára, hanem a programok előállítására fordítjuk. Ezért feltesszük a kérdést, miért is írunk programot? Az erre a kérdésre adott válasz meghatározza gondolkodásunk irányát. A válaszunk az, hogy azért, mert van valami megoldandó feladatunk, problémánk. Tehát a gondolkodásuk kiinduló pontja az, hogy kell lenni valaminek, amit feladatnak hívunk, s ez a feladat határozza meg az elérendő célt.
A gyakorlatban nagyon sokféle feladat van. Mi bennük a közös? Ez a kérdés is
többféleképpen közelíthető meg. A mi megközelítésük szerint a feladat
lényege az, hogy meghatározzuk, milyen állapotban vagyunk és milyen állapotba
akarunk jutni. Az hogy mik az állapotok, a konkrét problémától függ. Például, ha
egy autót akarunk egy hosszabb útra felkészíteni az állapotát jellemezheti az, hogy
mennyi a tankban a benzin, mennyi az ablakmosó folyadék, mekkora a nyomás a
kerekekben, működik-e az irányjelző és így tovább. A lényeg az, hogy van a
rendszernek valahány jellemzője, ezen jellemzők lehetséges értékei egy-egy halmazt
alkotnak. Egy ilyen halmaz állhat a mennyiséget kifejező számokból, lehet akár a
működik,
nem működik
halmaz is.
Ha mindegyik jellemző lehetséges értékeinek halmazából választunk egy-egy értéket megkapjuk az autó egy lehetséges állapotát. Márcsak az hiányzik, hogy észrevegyük, a lehetséges állapotok halmaza matematikailag egy direktszorzat.
Az elsőként bevezetendő absztrakt fogalom a fent említett lehetséges állapotok halmaza.
2.1. Definíció (ÁLLAPOTTéR).
Legyen
egy véges halmaz és 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.
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.
Kikötöttük, hogy az állapottérnek csak véges sok komponense legyen.
Lehetne általánosabb definíciót is adni, úgy ,hogy nem kötjük ki az
halmaz végességét, ekkor a fent definiált állapotteret az általánosított állapottér
egy (véges)nézetének nevezzük.
Az, hogy a komponensek legfeljebb megszámlálhatók, azt is jelenti,
hogy a komponensek között nem szerepelhet a pl. valós számok halmaza.
Természetesen ettől még egy típusértékhalmaz tartalmazhatja akár
-t is.
Az
lehet állapottér komponens.