ALAPFOGALMAK 1. A reláció az program programfüggvénye, ha. Azt mondjuk, hogy az feladat szigorúbb, mint az feladat, ha

Hasonló dokumentumok
Előfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból

3. előadás. Programozás-elmélet. A változó fogalma Kiterjesztések A feladat kiterjesztése A program kiterjesztése Kiterjesztési tételek Példa

Programkonstrukciók A programkonstrukciók programfüggvényei Levezetési szabályok. 6. előadás. Programozás-elmélet. Programozás-elmélet 6.

Programozási Módszertan definíciók, stb.

5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás

Bevezetés a programozáshoz I. Feladatok

Specifikáció A leggyengébb előfeltétel

Í Í Í Ü Ó Ó Ö Á Ü Ü Ó Ü Ü Ó Ö Í É Ö

í Ó ó ó í ó ó ó ő í ó ó ó ó

é ö é Ö é é ő í ó í é ő ö ú é ó é ő ü ü é ó ö é é ó é é ö é ő í é é ő é é ö é ű ö é í ó é é í ö í ó í ó é é ö ó í ó ó í ó é é ö ő í ó ó í ó ü é í ü

í ó ő í é ö ő é í ó é é ó é í é é í é í íí é é é í é ö é ő é ó ő ő é ö é Ö ü é ó ö ü ö ö é é é ő í ő í ő ö é ő ú é ö é é é í é é í é é ü é é ö é ó í é

ő ö ő ű ó ö ó ű Í Ö Ö Á Í Ó Ö Ü É Ö Ö Ö Á Á Ö É Á Ö

Ö Ö Ú Ó Ö ű Ő Ő ű ű Ü Ő Ó Ő

É Í ü ú É ü ő ő ő ő ú ő ú ü ü ő ü ú ü ű ú ú ü ü Í ü ű ő ő É ő

ö ö ö ö ö ö ö ü ö ü ö ű ö ú ü ű ö ü Í ö ú ü ü ű ö ú ü Á ü

ű í ú ü ü ü ü ü Ó í ü í í í É Á

ú ú ü ü Á ú ú ü ű ű ú ü ü ü ü

ö ö ó ú ö ö ú ü ó ö ö Í ö ö ö ü ó ö ö ú ú ö ü ó ü ó ü ö ú ü ó ü ö ó Á Á ö ü ú ó ö ü ü ö ó ü ü Á ü ö ü ö ü ö ö ö ü ö ú ö ö ö ü ú ö ú ö ű ú ú ü ö ó ö ö

ő ö ő ú ő ö ö ő ó ő ö ü ú ö ö ó ő ö ü ó ó ó ó ő ő ő ó ó ú ő ü ő ö ö ó ü ö ö ő ű ö ö ő ú ú ó ö ő ű ö ó

ü ö ú ö ú ü ö ü Á Ó ö ö ö ö ú ü ú ü ü ú ú ö ö ü ü ú ü ü ö ö ű ö ü ü ü ü ö ö

é ú é é é é é é é é é é é é ú é ö é é é ö Ő é é é ú é é é é é é é é ö é é é ö é Ö é é ö é ö é é é ű é ö ö é ö é é ö ö é é ö ö é ö é Ö é ú é é é é é é

ő ő ő ő ő ő ú ő ü Á ü ü ő ő ő ő ő ő ő ő ő ő Ö Ó ő ő ő Ö ő ő ő

ú ü ü ú Ö ú ü ü ü ü ü ú ü ú ü ű Í ü ü ű ü ű Ó ü Ü ű ú ú Á ü ű ű ü ü Ö ü ű ü Í ü ü

ó É ó í ó ó í í ö í ó í ö ö ö ü ö ó ó ó ü ú ö ü ó ó ö ö ü ü ü ö ö ó ö í ó ű Ü ó í ú í ö í ö í Í ó ó í í ö ü ö ö í ö í ö ö ö ü ó í ö ö ó í ú ü ó ö

Í Í Ó ű Ü Ó Ó Ü ü Ö Í Ü Í Í ú Ö Ó Í ú ú Ö Ó É Í ű ú

ö ö Ö ó ó ö ó ó ó ü ö í ü ú ó ó í ö ö ö ó ö ü ú ó ü ö ü ö ö Ö ü ö ö Ö ó

Í Ú É ő ő ú ö Ö ú ú ú ö ö ú ö ö ű ö ő ö ö ú ö ő ő ö ö ö ő ő ú ő ú ö ö ö ú ö ö ú ő ö ú ö ű ö ő Ó ő Á ö ő ö ö

Ü

ó ú ú ü ú ő ó ő ő ó ó ó ö ó ü ő ó ő ö ü ü ó ö ő É ó ö ö ö ó ó ö ü ü ö ü ó ó ő ó ü ó ü ü ö ö É ú ó ó ö ú ö ü ü ó ó ó ü Á ö ö ü ó ö ó ö ö ö ö ó ó ö ó ó

ú Ü Í ú ú ú ú ú ú

É ő ő ű ú Á ő Á ő ű ő ő ő ő ő ő ő ő ű ú ű ű ő ő ő ű

É ö Ű ő ű ő ő ű ű

ő ő ő ő ú É ü ú ú ű ú ű ő ő ő ő Á Á ü ő É É É É É É Á Ú Á Á ő ő ő ő ő É Á Á Á ő ő ő Á ü ő ő ü


ű ú ú Ö ó Ö ó ó ó Ö ű ó ű ű ü Á ó ó ó ó ü ó ü Ö ó ó ó Ö ű ű ü Ö ű Á ú ú ú ó ű í í Ő ú Á É Ö í ó ü ű í ó ű ó Ö ú Ő ú ó í ú ó

í í É í ó ó É ö í ó í ó í ó ó í ó í í ó ó ó í ö ö ö ö í í í ó ó ö ó

Í ö ö ű ú ö ö Í ö ü ö ü

ö ü ü ú ó í ó ü ú ö ó ű ö ó ö í ó ö í ö ű ö ó Ú ú ö ü É ó í ö Ó Á í ó í í Ú ö ú ö ű ü ó

ö ő ő ü ü Ó ü ö ű Á ő ő ö ő Á Ó ű ö ü ő ő ű

Ü ü Ü Ö Ó ö ü ö Ó Ú Ó ü Ó ö ö Á ö ö ö ö ü

ö Ó ű ö ó í ó ü ö Ó ó í ö ö ó Ö ó ö í ó í ó Á í ó Á Á Ő ú ü ó Í ü ú ü

Ö Ö ű ű ű Ú Ú ű ű ű Ú ű

Ö Ö Ö Ö Ö Á Ű É Ö Ö Ö

ú ú ö ö ü ü ü ü ű ü ü

Ö Ö ú

É Í Á Á É Ü Ó É É É É Í Ó Ó Ő Á Á É Á É É É É Á É É Á Á É É Á É Í

ü É ö É É ö ö ö ü ö ö Á ű ö ű ű ű Á Í ö ö Ó ö

Ü ű ö Á Ü ü ö ö

ú ű ú ú ű ú ű ű ú ű ú ű Á ű ű Á ű ű ú ú ú ú ú ú ű ú ú ú ú ú ú ú ú

ű ú Í Ó Á ú Ű ű Ő Ö Á ú Ű Ü ú ú Á ú ű

í ó í ó ó ó í í ü ú í ú ó ó ü ü í ó ü ú ó ü í í ü ü ü ó í ü í ü ü í ü ü í ó ó ó í ó í ü ó í Á

ő ő Ű ü ú ú Ú ü ű ő ő ő ő Á Á Í ü É ő ő ő ő ő É ő ú ú ú ő Á Ö ő

Ö ő ü Ö Ö Ő ü ő Ö Ö ü ű Á Í Ö ű ü ő ő ő Ö ü ü ő ő ő Ü ü ő ő ő ü ő ő ü ü

ú ű ű É ü ű ü ű ű í ü í ő í Ü ő ő ü ú Í ő ő í ú ü ü ő ü

Í Ó ü ü í ü ü ü í Í í É í í Í Í ü ü ü í Í ü

ű Á ü ő ö í ö ö ő ő ő ő ö

Ö Ö ö Ó Ó Ó Ó Ü ú ü Ű Ö Ö Ö ö Ü ö Í ü ű

É Ö Á Í Á Ó Ö ü

ü ö ö ő ü ó ó ú ó

ű ú ü ü ü Í ü ö ü ö ü ö ü Ó ü ö ü ö ö ü ű ű ú ü ö ö ü Ó ö ű ü ö ú ö ö ü ü ű ü ü ö ö ü ü ú ö ö ü ü ú ü

ö ö ö Ö ö ú Ö í Ö ű ö í Ö í ö ü ö í ú Ö Ö ö í ű ö ö í ö ö Ő ö í ü ö ö í Ö ö ö í ö í Ő í ű ű í Ö Ó í ö ö ö ö Ö Ö ö í ü ö ö Ö í ü Ö ö í ö ö ö ö ö Ö ö í

í í ü í í í í í Ó ő ő í í í Ú ü Ú í í Ú ő ü Ú ü ő

í ü í ü ő ő ü Í ő ő ő ú í ő ő ö ö ö ű ü í ő ő í ú ö ö ú ő ő ú í ő í ő ö ö í ő ü ü í ő ö ü ü ú í í ü ő í ü Í í í í ö ő ö ü ő í ő ő ü ű ő ő í ő í í ő ő

í í í í ó í ó ö ö í ű ü ó ó ü ú Á Á ó ó ó ó ó ó í ó ö ö ü Ó ö ü í ö ó ö í í ö í ó ó í ö í ú ó ú í ö ú ö ö ö í ó ó ó ú ó ü ó ö í ó ó í í í Á í ó ó ó

ó ö í í ü Ű Ö ó ó ű ö ü Í í í ö Ö Ó ö Ű Ö ú ó ó í í ű ö ö ö ö í ó ö ö í ö ű ö ű ö ö ö ö ö í ó Ö Ö ü ú ö ó ü ö Ö ű ö Ö ü ó ö ö ó ö ö Ó í ű ö ű ö ö ű í

ű ö ú ö ö ö ö í ű ö ö ö ű ö ö ö í ü ú í ű í ö í ú ű í ü ö ö ú ö í ö ű ú ü ö ö í ö ü ö ú ű ö ö ö í Á í ü í ö ü ö í ü ö Ő ü ö í ű ü ö í í í í í

ü ő ő ü ü ő ő ű í í ű ő ő ő ü ő ő í í ő ő ő ő ő ő ü ü í ő Ö ő ü í ő ü í í ő ü ő í ő ő í í ő ü ü í ő ü í ő í ő í ő ü í ő í ü í í ő

ű ú ó ó ü í Á Á ú ó ó ó ó ó ó ó ó ó ó ó ó ó ó í ó ü É ű ü ó í ü í í í í í ó í ü í í ó ó Á

É ú É ö ö ű ö ö ö ú ú ú ű ű ú ö ű ö ű ű ü ö ö ü ű ö ü ö ö ö ö ú ü ö ö ö ú ö ö ú ö ö ú ü ú ú ú ű ü ö ö ű ú ű ű ü ö ű ö ö ö ű ú ö ö ü ú ü ö ö ö ü ú ö ű

7.4. A programkonstrukciók és a kiszámíthatóság

Programozási módszertan

ő ű í ő ú í í Á ű í ő ő ő ő í É í í ő Ö Ö Ö Á Í Á ő ő ő ő É ő ő ú ú ú í ő Á Ö ő ő

í ű í í í ű ö ü ü ö ú ű ú ö ö í í í ű ö ü ü ö ö ö ö í í í ű ö ü ü ö ü ö í í í ű í ö í ö ö ű í ü ü ö í ö ö ö ü í í ű í ú ö ö ö ü ö ö ú ö ö ö ü ö ö ö ö

Í Á ő é é é é é ő é ő é ő é Í Á Ú Á Á é ő é ő é é é é é ű é é é é é é é é Á é é é é é ú ú é é é é é é é ú é é é é é é é é é é é ő é é é é é é é é ű é

ú ü ú ö ú í ü í ű ö ü ü ú ú ö ú ö íö í ú ü

Ú ú ö é ö é Ú ú ö ű ö ö ű ö é ö ö é í í Ö ö í í Á Á Ó é ű ü é é ü ú é ü é ű ü é

Á Ó É É Ú É ő í ő ő ö ő ö ő í ö ö ü í ő í ő ö ű ő í ü ü ő í ö ő ü ő ú ü í í ű ü ő ő ő í ö í ú ö ő ö ü ő ő ő É

Á ú ú ű ű ú ú Í ú ú Ö ű Ö ű Ö Ö ű ű ú ÍÍ Í ú Í Í Í Í Í ú ú

ó ú ó ó ó ó ó ó ó ó ó ó ü ó ü ö ü ó Á Á Ő ű ü ó ó ó Í ó ü ú ü Á Á ű ö ó ó ó ó ö ü

Á ó ó ö ó ó ó ö ó ó ö ü ö ó ü ö ó ü ó ö ó ü ó űö ú ü ö ú ó ó ó ő ü ö ö ó ö ó ó ó ó ö ó ő ú ü ö ó ö Ú ü ó ü ő ö ü ö ö ó ó ü ő ő ó ő ü ó ó ó ö ű ő ő ű ü

ö ű é é é é é é ü é é é é ű é é ü é é é é é ó ó é Í é í é é é é ó ö é ö ö ö ó é é í é é é é Ő é é é ü ü é é é ö ö ö é ü é é í é ó ü é é ü é ó é ó ó é

ü ű ü ó ő ó ű ú ő ó ő ű ü ó ő ó ő í ő ó ó ő ő í ó ő ő ü ó ű ü ó ő ő Ö ő ü íí ő í ű ü ó ő ü ő í ő ű ü ó ő ő

ő ő ó é ő ő ő é ú é ő é é ú ó é é é í é í í é ű é ö é é é Ö ó í é é é ő ő é ö ó é Í ö ö ő é é é ő ó ó ú ö ó í ó ő ő é é ő ü ö é é é Ö é í í é ú ü é ö

í ü ü ú í ü ú ú É Á í ű Á ú í ü í Ő Ű í Ó ű í ü í ű Ú ú É í ü í í

Á Á Á ö ö Á É É ö ú É Á É É ű ö ö ö Á É É É ö Á Í Á É ö ö ö Ö Ö ű ö Ö ű Ó ü ö ű ö Ó Ó ú ö ö Á É É ö ű É Á É É ö

íő ö Ú ö ö ő í ű í ű í í ű ö í ö Ü ö

ö í Á Á Á ö É É í É Á Á Á Á Á É ő ö í ő ö ő ö í ü ő ö ő ö ő ü ö ő ö í ő ő ő ö í ő ő ú ö ű ö ő ö í

Á ó ö í í ö í ö ö ó í ű ó í

ó ú ő ö ö ó ó ó ó ó ő ő ö ú ö ő ú ó ú ó ö ö ő ő ö ö ó ú ő ő ö ó ő ö ö ö ö ö ö ó Á É ű ó ő ő ű ó ó ö ö ő ó ó ú ő Ű ö ö ó ó ö ő ö ö ö ö ő Ú ú ó ű ó ó ő

ó í ú ő ó ó ü ő í ú ó ü Ö Í ö ő ü ö ö ó ő ü Ü ö Ö ö ü ó ü ú ö Ö í í ő ö ü ú ü ü ó í ő ő ü í ü É ő ő Í ö ö ó ő ó ó ő ü ö ü ő ó ő ő ö Ö ő ü ő ő ő ü ö ö

é ú ó é í é é é é í é ő é é ő é é í é é é ó é í ó ö é ő ő ő é í ó Í ő í é ö ő é í ó é é ű ó é Ú é í é é í é í é ó é í é ö é ő é ó ó ó é ö é Ö ü é ő ö

ó Ó ó Ó Ő ó Ő Ó Í

É ö É ó Á É ó ü Á Ő Ö ü ö Ö ő ü ö ő Ü ű ő ó ő ó ő ő ő í ö ö ö í ő ü ü ő ü ü ő ö ó ő ő ú ő ő ö ö ő ő ő ú ő ő ü ú

ü í ű í ó ö ó ü ö ú ó í Á ó ö ú ü ó í ö ó ó ó Á ó ö ú ó ó ó íú ü ó ö ö í ü ó ö ú ó í í í í Ö í ö ú ó í í ú í ü ű ö Í í ó Ö Ö ö ű ö í ó í Í í ü í

Ó ö ü í ü ö ü ü ü ö ü ö ö í ü ü ü ü ö ö í ö ü ö É ü ü ü É ö ü ö ö ü ü ö ü í ü ö í

É É Í ú ú Ü ú ú ű

ő ő ó ő ö ú ű ő ó í ő í ő ó ő í ó ó ő í ő í Ü ú ó ő ö ő É ő ő ő Ü í ó í Ü í ó ó Ü Ü ó ő ó ó Ü Ü ó ó ó í ó Ü ű í Ü Ü ő Ü ó É ó ő í ú

Ó é Ó ü é é é é é é ú é é é é é é Ó é é é é é é Í é é é é é é é é Ó é é é é é é é Ó é ü é é é é é é é é é Ó é é é é ú é é é é é é é é é é é ü é é é é

ö Ö Í ó ö ü ö ö ó ó ü ó Í ö ö ö ó Á ü ü

ü ü ó í ö Ö ü ó ö ö Ö ü ö Ö ö ö ö ö ú ö Ó ö ú ö í ö í ö ü ú ü ó í ú ü ó í ö ö ú ó ó ö ü ó ü ö ö ö

Átírás:

ALAPFOGALMAK 1 Á l l a p o t t é r Legyen I egy véges halmaz és legyenek A i, i I tetszőleges véges vagy megszámlálható, nem üres halmazok Ekkor az A= A i halmazt állapottérnek, az A i halmazokat pedig típusértékhalmazoknak nevezzük A f e l a d a t Az állapottér segítségével megfogalmazzuk, hogy egy adott állapotból ( azaz az állapottér egy eleméből, pontjából) milyen állapotba (azaz az állapottér mely pontjába) akarunk eljutni Feladatnak nevezzük egy relációt A p r o g r a m Programnak nevezzük az relációt, ha 1, 2, 3 A p r o g r a m f ü g g v é n y A reláció az program programfüggvénye, ha 1, 2 M e g o l d á s Azt mondjuk, hogy az S program megoldja az F feladatot, ha 1, 2 a S z i g o r í t á s A A Azt mondjuk, hogy az feladat szigorúbb, mint az feladat, ha 1, 2 Programozás módszertan 1 vizsga

KITERJESZTÉS 2 A f e l a d a t k i t e r j e s z t é s e Legyen a B állapottér altere az A állapottérnek Az relációt az feladat kiterjesztésének nevezzük, ha P r o g r a m k i t e r j e s z t é s e Legyen a B állapottér altere A állapottérnek, és jelölje a B kiegészítő alterét A-ra Legyen továbbá S program a B állapottéren Ekkor az A-beli relációt az S program kiterjesztésének nevezzük, ha K i t e r j e s z t é s i t é t e l e k B ő v í t e t t i d e n t i t á s Legyen B altere A-nak a B kiegészítő altere A-ra, reláció A G bővített identitás felett, ha és és V e t í t é s t a r t á s Legyen B altere A-nak, feladat A G vetítéstartó B felett, ha F é l k i t e r j e s z t é s Legyen B altere A-nak, feladat, Azt mondjuk, hogy a G félkiterjesztés H felett, ha K i t e r j e s z t é s t é t e l e k Legyen B altere A-nak, a a B kiegészítő altere A-ra, S program B-n feladat, illetve S-nek, illetve F-nek kiterjesztése A-ra Legyen továbbá olyan feladat, melyre, pedig olyan program, amely ekvivalens S-sel B-n Ekkor az alábbi állítások teljesülnek: 1 ha megoldása -nek, akkor S megoldása F-nek; 2 ha megoldása -nek, akkor S megoldása F-nek; 3 ha megoldása -nek, akkor S megoldása F-nek; 4 a) ha megoldása -nek, és vetítéstartó B felett, akkor S megoldása F-nek; b) ha megoldása -nek, és félkiterjesztés felett, akkor S megoldása F-nek; 5 ha S megoldása F-nek, akkor megoldása -nek; Programozás módszertan 1 vizsga

KITERJESZTÉS 3 6 ha s megoldása F-nek, és bővített identitás felett és vetítéstartó B felett, akkor megoldása -nek; 7 ha S megoldása F-nek, és félkiterjesztés felett, akkor megoldása -nek A 4 tételből következik az első három, hiszen ekvivalens S-sel B-n, és vetítétartó, illetve, és félkiterjesztés -en 4 tétel bizonyítása: Legyen tetszőleges Ekkor megoldás tehát, így a megoldás első kritériumának teljesülését bebizonyítottuk Tekintsük most a második kritériumot; legyen tetszőlegesen rögzített Ekkor Az a esetben, azaz vetítéstartó, akkor -ra Ekkor tetszőleges esetén, mivel a megoldás definíciója miatt, Tehát a megoldás második feltételek is teljesül A b esetben, azaz ha félkiterjesztés, akkor, azaz, és a megoldás definíciója miatt, tehát és ezzel ebben az esetben is beláttuk, hogy az S program megoldja F feladatot, Programozás módszertan 1 vizsga

MEGOLDÁS 4 M e g o l d á s á t n e v e z é s s e l Legyen, feladat és program Azt mondjuk, hogy S az átnevezéssel megoldása F-nek, ha 1 2 A z á l t a l á n o s í t o t t m e g o l d á s Legyen, feladat és program Ha létezik olyan C és D állapottér, hogy, A altere C-nek, B altere D-nek, és S kiterjesztése D-re átnevezéssel megoldása F C-re való kiterjesztettjének, akkor azt mondjuk, hogy S általános értelemben megoldása F-nek R e l á c i ó s z e r i n t i m e g o l d á s Legyen A és B tetszőleges állapottér,, program és Azt mondjuk, hogy S szerint megoldása F-nek, ha 1, és 2 A kompozíció és a szigorú kompozíció megegyezik, ha legalább az egyik reláció függvény, ezért a megoldás átnevezéssel a reláció szerinti megoldás speciális eseteígy a következő tétel arra is alkalmazható R e l á c i ó s z e r i n t i m e g o l d á s t é t e l e Legyen F tetszőleges feladat, az állapottere A, egy paramétere B, elő és utófeltétele pedig és Legyen program és tetszőleges olyan reláció, melyre Definiáljuk a következő függvényeket:, Ekkor, ha, akkor az S program szerint megoldja az F feladatot A szerinti megoldás definíciója két pontjának teljesülését kell belátnunk 1 Programozás módszertan 1 vizsga

MEGOLDÁS 5 Legyen Ekkor Mivel, és Felhasználva, hogy : és Mivel,, tehát 2 Legyen A bizonyítás első részében leírt lépéseket folytatva: mivel, Programozás módszertan 1 vizsga

SPECIFIKÁCIÓ 6 L e g g y e n g é b b e l ő f e l t é t e l Legyen program, állítás Ekkor az S program utófeltételhez tartozó leggyengébb előfeltétele az az függvény, amelyre: és Definiáltuk a reláció szerinti őskép fogalmát is, ennek felhasználásával azonnal látszik, hogy Felhasználva az igazsághalmaz definícióját és a szigorú kompozíció szerinti őskép tulajdonságát: Mivel függvény, a kompozíció és a szigorú kompozíció megegyezik, tehát következő az állítás: 1 A z t u l a j d o n s á g a i Legyen program, állítások Ekkor 1, (csoda kizárása elv) 2 ha, akkor, (monotonitás tulajdonság) 3, 4 S p e c i f i k á c i ó t é t e l e Legyen feladat, B az F egy paramétere,,, F= Legyen, és definiáljuk a következő állításokat: Ekkor ha, akkor az S program megoldja F feladatot, 1, ugyanis: Legyen tetszőleges Ekkor és relációk definíciója miatt és De ekkor a tétel feltételek alapján: 2, ugyanis: Legyen tetszőlegesen rögzített, olyan, amelyre Ekkor a feltétel szerint: Programozás módszertan 1 vizsga

SPECIFIKÁCIÓ 7 J ó s p e c i f i k á c i ó Ha a feladat specifikációjának felírásakor úgy választjuk meg a paramétertere és az elő-, utófeltételt, hogy rájuk a következő két feltétel teljesüljön: 1, 2 vagy és, akkor a specifikáció tételek meg fordítható Azt kell belátni, hogy ha S megoldása F-nek, akkor: a b Az a következik abból, hogy 1 teljesülése esetén, akkor, és a megoldás miatt a b pedig, abból, hogy ha ugyanis 2 miatt az unió egy tagú, vagy minden tagja egyenlő Az állítás két feltételének megfelelő specifikáció jó specifikáció Létezik minden feladat esetén ilyen? Ha a paramétertér az állapottér, az identikus leképezés és, akkor az állítás mindkét feltétele nyilvánvalóan teljesül V á l t o z ó Az A= állapottér egydimenziós projekciós függvényeit változónak nevezzük Ha a paramétertér is direktszorzat alakú, akkor a paramétertér egydimenziós projekciós függvényeit paraméterváltozóknak nevezzük Programozás módszertan 1 vizsga

SZEKVENCIA 8 S z e k v e n c i a Legyen, Legyenek programok relációt az és szekvenciájának nevezzük és -vel jelöljük, ha és S z e k v e n c i a p r o g r a m f ü g g v é n y e Legyen A tetszőleges állapottér, programok A-n, S= Ekkor Legyen tetszőleges Ekkor tehát Legyen Ekkor A s z e k v e n c i a l e v e z e t é s i s z a b á l y a Legyen S=, és adott állítás A-n Ha 1) és 2), akkor Legyen Ekkor 1) miatt és Mivel 2) miatt Továbbá 2) miatt, tehát A szekvencia levezetési szabálya és a specifikáció tétele alapján a következőt mondhatjuk: ha olyan programok, amelyekre a paramétertér pontjában és teljesül, akkor megoldja a párokkal adott feladatot és Programozás módszertan 1 vizsga

ELÁGAZÁS 9 E l á g a z á s Legyenek feltételek, programok -n Ekkor az relációt az -kből képzett, -k által meghatározott elágazásnak nevezzük, és -nel jelöljük, ha ahol és A z e l á g a z á s p r o g r a m f ü g g v é n y e Legyen A tetszőleges állapottér, feltételek A-n Ekkor programok, valamint A z e l á g a z á s l e v e z e t é s i s z a b á l y a Legyen, és adott állítás A-n Ha 1), 2) akkor Legyen, és tegyük fel, hogy valamelyik feltétel igaz -ra, azaz Ekkor, ugyanis Másrészt mivel : azaz Programozás módszertan 1 vizsga

ELEMI PROGRAMOK 10 E l e m i p r o g r a m Eleminek nevezünk egy állapottéren egy programot, ha S K I P A B O R T -nek nevezzük azt a programot, amelyre É r t é k a d á s -tal jelöljük azt a programot, amelyre Legyen és Az program általános értékadás, ha Az általános értékadáson belül speciális eseteket különböztetünk meg: Ha, akkor az programot értékkiválasztásnak nevezzük ( ) Ha az reláció függvény, akkor az programot értékadásnak nevezzük ( ) Ha, akkor parciális értékkiválasztás Ha és determinisztikus ( parciális függvény), akkor parciális értékadás E l e m i p r o g r a m o k p r o g r a m f ü g g v é n y e i : 1 2 3 4 E l e m i p r o g r a m o k l e g g g y e n g é b b e l ő f e l t é t e l e Mivel a program programfüggvénye identikus leképezés, egy tetszőleges utófeltételhez tartozó leggyengébb előfeltétele: Mivel az A program programfüggvénye üres a leggyengébb előfeltétel alapján egy tetszőleges utófeltétel esetén: Az általános értékadás leggyengébb előfeltételét külön vizsgáljuk a determinisztikus és nem determinisztikus, illetve a globális és parciális esetben Programozás módszertan 1 vizsga

ELEMI PROGRAMOK 11 Ha függvény, akkor függvény, és ezért Ha parciális függvény, tehát az értékadás parciális, akkor ennek leggyengébb előfeltétele: Ha nemdeterminisztikus Feltesszük, hogy, az értékkiválasztás leggyengébb előfeltétele Parciális esetben: Programozás módszertan 1 vizsga

TÍPUS 12 T í p u s s p e c i f i k á c i ó A hármast típusspecifikációnak nevezzük, ha teljesülnek rá a következő tételek: 1 az alaphalmaz 2 s specifikációs invariáns 3 a típusérték halmaz 4 a típusműveletek specifikációja, ahol, úgyhogy T í p u s A hármast típusnak nevezzük, ha az alábbi feltételek teljesülnek rá: 1 a reprezentációs függvény (reláció), a típusérzék halmaz az elemi típusérték halmaz 2 típusinvariáns 3, ahol program, úgy, hogy és M e g o l d á s - n k e r e s z t ü l Azt mondjuk, hogy az program a -n keresztül megoldja az feladatot, ha vannak olyan és illeszkedő terek, amelynek altere, illetve, hogy szerint megoldása -nek, ahol a fenti értelemben definiált leképezés, az kiterjesztése -re, pedig az kiterjesztése -re M e g f e l e l és Egy típus megfelel a típusspecifikációnak, ha 1 2 -n keresztül megoldja -et Programozás módszertan 1 vizsga

TÍPUS 13 T í p u s s p e c i f i k á c i ó t é t e l e Legyen és adott típusspecifikáció és típus, és tegyük fel, hogy a reprezentáció helyes, azaz Legyen továbbá, az állapottere, egy paramétere, elő- és utófeltétele pedig és Legyen és tegyük fel, hogy állapottere illesztkedik állapotteréhez Definiáljuk a következő állításokat:,,ahol a program és a feladat állapottere közötti, a -n keresztüli megoldás definíciójában szereplő leképezés Ekkor ha program a -n keresztül megoldja az feladatot, akkor az : A reláció szerinti megoldás tétele miatt csak azt kell belátnunk, hogy nyilvánvaló, mivel föltettük, hogy teljesül Ez pedig M e g f e l e l é s á l t a l á n o s í t á s a Azt mondjuk, hogy típus általános értelemben megfelel a típusspecifikációnak, ha létezik olyan ekvivalens típusspecifikáció, amelynek az eredeti értelemben megfelel A b s z t r a k t t í p u s Legyen egy típus A -t absztrakt típusának nevezzük, ha 1 2 Programozás módszertan 1 vizsga