A helyességbizonyítás klasszikus módszerei
|
|
- Antal Fekete
- 7 évvel ezelőtt
- Látták:
Átírás
1 A helyességbizonyítás klasszikus módszerei Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Motiváció Kritikus algoritmusok helyességének bizonyítása a részletes tervek alapján Korlátozott feladatok: biztonságkritikus funkciók, hozzáférésvédelem, protokoll mag, Részletes terv: Pszeudo-nyelven leírt algoritmus A továbbiakban mint program (Valós programnyelvek részleges támogatása) Tételbizonyító rendszerek használata Bizonyítandó tulajdonság mint bizonyítandó tétel adott Klasszikus elő- és utófeltételek a tipikusak (contract) Kihívások: (Pszeudo) programból hogyan lesz bizonyítandó tétel? Milyen stratégiák használhatók a bizonyításhoz?
2 Felépítés: Tételbizonyító rendszerek Leíró nyelv, ennek primitívjei Axiómák (leíró nyelvhez kötve), pl. Elsőrendű logika Típusokkal kiegészített logikák Magasabbrendű logika, Következtetési szabályok Indukció, dedukció, unifikáció, Komponensek: Algoritmikus: Egy-egy következtetési szabály alkalmazása Kereső: Stratégia/taktika a szabályok kiválasztására Cél-vezérelt (visszafelé történő) keresés Mélységi vagy szélességi keresés Interaktív (felhasználói segítséggel) Tételbizonyító rendszerek alkalmazása A tételbizonyítás komplex feladat n operátort tartalmazó tétel, O(2 n ) hosszú bizonyítási szekvencia, O(2 2n ) időigény a bizonyítás megtalálásához (worst case) Használati esetek Kézi bizonyítás automatikus ellenőrzése (proof checking) Kézi bizonyítás segítése (interaktív szabályalkalmazás) Tételbizonyítás szerepe Adat-intenzív alkalmazások tulajdonságainak bizonyítása Paraméter-függőségek kezelése (pl. protokoll résztvevők száma) Indukció használható Együttes használat a modell ellenőrzéssel Kis paraméter értékre (kiindulási eset): modell ellenőrzés Tulajdonság megtartásának bizonyítása indukcióval Népszerű eszközök HOL, PVS, ACL2,
3 Tulajdonságok D dedukciós rendszer, c levezetendő kritérium (tétel) Szemantikus helyesség (soundness): Ami levezethető D-ben az igaz Szükséges a használhatósághoz Formálisan: c: ha - D c (levezethető) akkor =c (teljesül, igaz) Szemantikus teljesség (completeness): Ami igaz, az levezethető D-ben Hasznos tulajdonság, de nem szükséges Formálisan: c: ha =c akkor - D c Totális helyesség és teljesség: Minden interpretációra Dedukciós rendszer konzisztens: Nem lehet egy tételt és az ellenkezőjét is bizonyítani Program és specifikáció kapcsolata Egy P program és egy Φ specifikáció (követelmény) esetén: Szintézis feladat: Φ alapján P konstruálása Analízis feladat: P alapján Φ levezetése Verifikáció (program helyességbizonyítás): P = Φ eldöntése Optimalizáció: P = Φ alapján olyan P konstruálása, hogy P = Φ, ugyanakkor P jobb adott szempontok szerint (kisebb, gyorsabb ) Javítás: P Φalapján olyan P konstruálása, hogy P = Φ legyen
4 Bizonyításhoz leginkább használt módszer: Indukció Számítási indukció: Műveleti szemantika esetén Állapotokra: Ha s 0 (kiindulási állapot) esetén igaz a tulajdonság, és az átmenetek megőrzik, akkor végig fennáll s0 s1 s2 s3 s4 s5 s6 Strukturális indukció: Axiomatikus szemantikához Szintaktikai konstrukciókra: Ha elemekre igaz, és a konstrukciók megőrzik, akkor a teljes programra igaz c0 c1 e1 c2 e2 e3 e4 Célkitűzéseink Bizonyítási vázak rögzítése program helyesség bizonyításhoz Bizonyítási stratégia megadása Nincs teljesen automatikus, garantált módszer Nem konkrét programozási nyelvhez kötve Pszeudo-nyelv (algoritmus leírás) Továbbiakban mint programozási nyelv szerepel Pl. saját, domén-specifikus nyelvhez is alkalmazható Megkötések a bizonyíthatósághoz Programozási nyelv: Formális szemantikával rendelkezik (műveleti vagy axiomatikus szemantika) Specifikációs nyelv: Elsőrendű kijelentéslogika
5 Programozási nyelv műveleti szemantikával Konfiguráció (állapot): C Látható állapot σ (a program vizsgált kimenetében szerepel) σ[x] egy x változó értéke egy σ látható állapotban σ[x] az x változó-vektor értéke egy σ látható állapotban Rejtett állapot (helyesség szempontjából érdektelen) Szintaktikus folytatás: A további számításokat definiálja Programszámláló helyett A továbbiakban végrehajtandó forrásszövegként képzelhető el Átmenet reláció a konfigurációk között: π(p, σ 0 ) egy P program számítása σ 0 kezdőállapotból C 0 C 1 C 2 maximális szekvencia (végállapotig/végtelen) σ 0 σ 1 σ 2 látható állapot szekvencia val(π(p, σ)) = σ n véges esetben a végállapot jelölése I domén: A számítások itt értelmezettek Specifikációs nyelv Korlátozások: Determinisztikus program Nem folytonos működésű Érték- vagy állapot-transzformációt valósít meg Tulajdonság megadása: Predikátumok Előfeltétel: p(x) - a megengedhető kezdeti állapotokra x a látható állapot változói σ 0 = p(x) jelentése: kezdőállapotban igaz p(x) Utófeltétel: q(x) - az elfogadható végállapotokra true minden befejeződő számítás kielégíti false egy szabályos végállapot sem elégíti ki val(π(p,σ 0 )) = q(x) jelentése: π számítás végállapotában igaz q(x) Specifikáció példák Segédváltozók használata Specifikációs változók használata
6 Példák specifikációkra x és y nagyság szerinti sorba rendezése: előfeltétel p(x,y) = true, utófeltétel q(x,y) = x>y tömörebben felírva (true, x>y) x legyen páros a kimeneten: (true, even(x)) (true, y: x=2y) Bemeneti x-et kétszerezze meg: (x=x, x=2x) ha a doménen értelmezett even(x) itt y kötött segédváltozó q(x)-ben itt X egy specifikációs változó x/y poz. bennfoglalás eredménye q és maradéka r: (x=x>0 y=y>0, X=qY+r 0<=r<Y) ha meg kell őrizni x és y értékét: (x=x>0 y=y>0, X=qY+r 0<=r<Y x=x y=y) Program helyességi kritériumok (1) Részleges helyesség: Jelölése {p(x)} P {q(x)} Egy program részlegesen helyes p(x), q(x) szerint, ha teljesül: π(p,σ 0 ) és σ 0 = p(x) esetén ha π befejeződik, akkor val(π(p,σ 0 )) = q(x) Megjegyzések: Az előfeltételt kielégítő állapotból induló számításokra: ha befejeződik, akkor az utófeltétel igaz a végállapotban Nem mond semmit azokról a számításokról, amelyekre σ 0 p(x) {true}p{true} minden programra igaz {true}p{false} ha igaz, akkor nincs befejeződő számítás
7 Program helyességi kritériumok (2) Helyesség: Jelölése <p(x)> P <q(x)> Egy program helyes p(x), q(x) szerint, ha π(p,σ 0 ) és σ 0 = p(x) esetén π befejeződik és val(π(p,σ 0 ) = q(x) Megjegyzések: Az előfeltételt kielégítő állapotból induló számításokra: befejeződik és az utófeltétel igaz lesz a végállapotban <p(x)>p<true> csak befejeződést ír elő Felírható: <p(x)>p<q(x)> a.cs.a. {p(x)}p{q(x)} és <p(x)>p<true> azaz a program helyes, ha részlegesen helyes és befejeződik Egyszerű determinisztikus programok PLF flow language : start, x:=e, B(x), halt utasítások egyedi l címkékkel (l 0, l *, l i, ) assembly szinthez közeli pszeudo-nyelv Program szintaxis: PLF mint véges irányított gráf succ(l), succ + (l), succ - (l) használható a következő csomóponthoz Minden utasítás egy start halt útvonalon Szemantika: C=(σ,λ) konfiguráció és megadása: C(σ,λ) C (σ,λ ) a.cs.a. λ egy start: λ =succ(λ), σ =σ λ egy x:=e utasítás: λ =succ(λ), σ =σ[e/x] itt [e/x] jelöli, hogy x helyébe e helyettesítése történik λ egy B(x) elágazás: σ =B(x) esetén: λ =succ + (λ), σ =σ σ B(x) esetén: λ =succ - (λ), σ =σ
8 Példa: Maradékos osztás egész számokra x/y számítása, q hányados, r maradék Részleges helyesség ciklusmentes esetben (1) Ötlet: Számítási indukció {p}p{q} esetén Egy véges számításhoz tartozó útvonal jellemzői: u i = l i0 l i1 l i2 l ik Elérhetőségi (bejárási) feltétel: R u (x) predikátum Ha fennáll l i0 esetén, akkor éppen az u útvonalat járja be a program Állapot transzformáció: T u (x) egy állapotvektort ad Jelölések: x állapotból indulva az u útvonal bejárása utáni állapot x := T u (x) a végállapotot eredményező állapot transzformáció l im l ik szuffixe az útvonalnak az m indextől R um (x) és T um (x) erre a szuffixre vonatkoznak Ismert a végállapotra (utolsó szuffixre): R uk (x)=true T uk (x)=x - már a végállapotban vagyunk - nincs további transzformáció
9 Részleges helyesség ciklusmentes esetben (2) Visszalépéses indukció: Feltéve: Ismert R m+1 u (x) és T m+1 u (x) egy szuffixre Lépés: Az l im utasítása alapján R um (x) és T um (x) számítás x:=e hozzárendelés: R um (x) = R m+1 u (x)[e/x], B(x) feltétel pozitív ága: R um (x) = R m+1 u (x) B(x), B(x) feltétel negatív ága: R um (x) = R m+1 u (x) B(x), start: R u (x) = R u0 (x), T um (x) = T u m+1 (x)[e/x] T um (x) = T u m+1 (x) T um (x) = T u m+1 (x) T u (x) = T u0 (x) Így a végállapotban ismert R uk (x)=true és T uk (x)=x alapján a kezdőállapotra R u (x) és T u (x) levezethető Részleges helyesség ciklusmentes esetben (példa) R(x)=true T(x)=x x:=x+1 x>y R(x)=x>y T(x)=x R(x)=true T(x)=x x:=x+1 x>y R(x)=x+1>y T(x)=x+1 R(x)=x>y T(x)=x R(x)=true T(x)=x x:=x+1 x>y
10 Részleges helyesség ciklusmentes esetben (3) Részleges helyesség megmutatása: {p(x)} P {q(x)} a.cs.a. ha minden teljes u útra: x: p(x) R u (x) q(t u (x)) Doménen értelmezett elsőrendű logikai kifejezés; tételbizonyítónak beadható: x: p(x) R u (x) q(t u (x)) p és q a specifikáció alapján R és T a program forrás alapján, visszalépéses számítási indukció alapján megadható Részleges helyesség ciklusos programokra (1) Ötlet: Ciklusok felvágása Minden ciklusban egy l i utasítás kijelölése, ami azt (ciklusmentes) szegmensekre osztja I li (x) predikátum, ún. induktív állítás hozzárendelése a vágási ponthoz Első belépés után l i -nél igaz Ciklus futása során igaz marad (ciklus invariáns) Kilépés után a további szegmensekkel majd az utófeltételt igazzá teszi A szegmensek mint ciklusmentes utak az előző módszer alapján vizsgálhatók Elérhetőségi feltétel és állapot-transzformáció számítható l 0 l 1 l 2 l *
11 Részleges helyesség ciklusos programokra (2) Bizonyítási váz: Vágási pontok kijelölése a ciklusokban (legalább egy-egy) Induktív állítások felírása: I li (x) I l0 (x) = p(x) -kezdőállapotra I l* (x) = q(x) - végállapotra Ciklusokban: ld. előbb (ciklus invariáns) Verifikációs feltételek: A szomszédos vágási pontokra, azaz minden l, l vágási pontok által kijelölt u szegmensre: x: I l (x) R u (x) I l (T u (x)) bizonyítandó R u (x) és T u (x) a szegmensekre kiszámíthatók Helyes és teljes módszer Mindig találhatók megfelelő vágási pontok és induktív állítások (de ennek bizonyítása nem konstruktív ) Heurisztikus az induktív állítások felvétele Részleges helyesség ciklusos programokra (példa) I l4 (x,y,q,r) = (x 0 y>0 x=q y+r r 0)
12 Részleges helyesség ciklusos programokra: példa Befejeződés bizonyítása ciklusok esetén (1) Ötlet: Az induktív állítások paraméterezése Paraméter egy (W,>) ún. jól megalapozott halmazból Nem létezik végtelen w 0 > w 1 > csökkenő szekvencia Példák: Természetes számok, és az ezeken értelmezett > reláció Véges halmaz valódi részhalmazai, és a tartalmazás reláció Véges lista, és a prefix reláció A ciklus befejeződik, ha a paraméterről kimutatható, hogy csökken a ciklus végrehajtása során A paraméter sok esetben lehet maga a ciklusváltozó, de segédváltozót is használhatunk Megválasztása heurisztikus
13 Befejeződés bizonyítása ciklusok esetén (2) Bizonyítási váz: Jól megalapozott halmaz(ok) választása: (W,<) Vágási pontok kijelölése a ciklusokban: l 0, l i, l * Paraméterezett induktív állítások: I l (x,w) ahol w W Verifikációs feltételek (bizonyítandók): Inicializálás: x: p(x) w: I l0 (x,w) (előfeltétel bővítés) Terminálás: x: I l* (x,w) q(x) Csökkenés: Szomszédos l, l pontok által kijelölt u szegmensre: x: I l (x,w) R u (x) w <w: I l (T u (x),w ) Itt R u (x) és T u (x) a szegmensekre kiszámíthatók Helyes módszer <p(x)>p<true> bizonyítására A paraméterezett induktív állítások felvétele heurisztikus Befejeződés bizonyítása ciklusok esetén (példa) I l4 (x,y,n) = (y>0 n=r 0)
14 Rész-összefoglaló Alacsony szintű pszeudo-nyelvek (blokk diagram): Részleges helyesség ciklusmentes programokra: Visszalépéses számítási indukció Részleges helyesség ciklust tartalmazó programokra: Induktív állítások Helyesség ciklust tartalmazó programokra: Paraméterezett induktív állítások Következő lépés: Strukturált programnyelvek Helyességbizonyítás strukturált programokra Cél a komponálhatóság : Ha egy P program P 1 és P 2 szintaktikai egységekből áll, akkor P tulajdonságai P 1 és P 2 tulajdonságai alapján bizonyíthatók Strukturális indukció elve Strukturált programok: PLW nyelv P::= x:=e skip P 1 ; P 2 if B then P 1 else P 2 fi while B do P od Példa: P div : r:=x; q:=0; while r y do r:=r-y; q:=q+1 od
15 PLW szemantikája Konfiguráció: C=(P, σ) ahol P a szintaktikus folytatás (E az üres folytatás jelölése) σ a látható állapot (állapotváltozók) Átmenet reláció: C C (x:=e, σ) (E, σ[e/x]) (skip, σ) (E, σ) (P 1 ; P 2, σ) (P 1 ; P 2, σ ) ha (P 1, σ) (P 1, σ ) Itt az E;P P azonosság alkalmazható a végén (if B then P 1 else P 2 fi, σ) (P 1, σ) ha σ[b]=true (P 2, σ) ha σ[b]=false (while B do P od, σ) (P; while B do P od, σ) ha σ[b]=true (E, σ) ha σ[b]=false H dedukciós rendszer részleges helyesség bizonyításához (1) Axiómák: ASS: SKIP: {p[e/x]} x:=e {p} {p} skip {p} Szabályok a szintaktikai struktúrákhoz: SEQ: {p} P 1 {r} és {r} P 2 {q} {p} P 1 ; P 2 {q} Utófeltételként p teljesül, ha előfeltételként p[e/x] teljesül Ha (feltétel) akkor (köv.) COND: REP: {p B} P 1 {q} és {p B} P 2 {q} {p} if B then P 1 else P 2 fi {q} {p B} P {p} {p} while B do P od {p B} p ciklus invariáns
16 H dedukciós rendszer részleges helyesség bizonyításához (2) Általános szabályok: CONS: p p 1 és {p 1 } P 1 {q 1 } és q 1 q {p} P {q} AND: {p} P {q 1 } és {p} P {q 2 } {p} P {q 1 q 2 } OR: {p 1 } P {q} és {p 2 } P {q} {p 1 p 2 } P {q} Domén axiómái és szabályai: Kérdés, hogy rekurzívan megszámlálhatók-e? {true}skip{p} alakú állítások is Előfeltétel bővítés és utófeltétel szűkítés Utófeltétel részekre bontása Előfeltétel szétválasztása esetekre Részleges helyességbizonyítás példa {x 0 y 0} r:=x; q:=0; while r y do r:=r-y; q:=q+1 od {x=q y+r 0 r<y}
17 Dedukciós rendszer részleges helyesség bizonyításához (3) Egy C állítás bizonyítása: Tr I - H C ahol I a domén, Tr I a domén axiómái és szabályai H a dedukciós rendszer Példa az állításra: {x 0 y 0} P div {x=q y+r 0 r<y} Gyakorlati problémák: Domén szabályait a tételbizonyítónak ismernie kell Szabályok alkalmazásának stratégiája (keresés) Jellemzők: Az előbb felvázolt H helyessége bizonyítható Tr I - H {p}p{q} következménye = I {p}p{q} H teljessége: Ha a domén axióma- és szabályrendszere kellően bonyolult (elegendően erős): Gödel első nemteljességi tétele érvényes, azaz lehet olyan igaz állítás, ami nem bizonyítható Specifikációs nyelv kifejezőképessége elegendő-e? Definíció: Specifikációs nyelv kifejezőképessége SL specifikációs nyelv kifejező egy PL programnyelv és I domén esetén, ha p SL, P PL esetén post I (p,p) kifejezhető SL-ben P futása után elért állapotok predikátuma Kiindulási állapot predikátuma P program Egy D dedukciós rendszer relatív teljes a részleges helyesség bizonyításához, ha SL, PL, I esetén, ahol SL kifejező PL-re és I-re, fennáll: = I {p}p{q} következménye Tr I - D {p}p{q}
18 H* dedukciós rendszer helyesség bizonyításhoz Cél: PLW programok helyességének bizonyítása while B do P od ciklusok befejeződése kérdéses Ötlet (itt is): Paraméterezett állítások Jól megalapozott halmaz (pl. n természetes szám) pi(x,n) ciklus invariáns választása kell Módosuló REP szabály ebben az esetben: REP*: pi(x,n) B és <pi(x,n)>p<pi(x,n-1)> és pi(x,0) B < n:pi(x,n)> while B do P od <pi(x,0)> Többi szabály: { } helyett egyszerűen < > kell Aritmetikai kiterjesztés A módosult REP* szabály miatt: SL-nek támogatnia kell a jól megalapozott halmaz (itt: természetes számok) használatát Tipikus eset: Peano aritmetika támogatása Természetes számok és +, *, < műveletek Tételbizonyító erre felkészítve Definíciók: SL aritmetikai kiterjesztése SL +, ha minimális bővítésként a Peano aritmetikát tartalmazza I domén aritmetikai kiterjesztése I +, ha minimális bővítésként a Peano aritmetika doménjét tartalmazza
19 Aritmetikai helyesség és teljesség Aritmetikai helyesség p,q SL + mellett: Tr I+ - D <p>p<q> következménye = I+ <p>p<q> Aritmetikai teljesség p,q SL + mellett: = I+ <p>p<q> következménye Tr I+ - D <p>p<q> Itt: H* aritmetikai helyessége bizonyítható Összefoglalás Alacsony szintű pszeudo-nyelvek (blokk diagram): Részleges helyesség ciklusmentes programokra: Visszalépéses számítási indukció Részleges helyesség ciklust tartalmazó programokra: Induktív állítások Helyesség ciklust tartalmazó programokra: Paraméterezett induktív állítások Strukturált programnyelvek (while programok): Részleges helyesség: Dedukciós rendszer (strukturális indukció) Helyesség: Dedukciós rendszer, kifejezőképesség Aritmetikai kiterjesztés, aritmetikai helyesség és teljesség
Kiterjesztések sek szemantikája
Kiterjesztések sek szemantikája Példa D Integer = {..., -1,0,1,... }; D Boolean = { true, false } D T1... T n T = D T 1... D Tn D T Az összes függvf ggvény halmaza, amelyek a D T1,..., D Tn halmazokból
RészletesebbenNEM-DETERMINISZTIKUS PROGRAMOK HELYESSÉGE. Szekvenciális programok kategóriái. Hoare-Dijkstra-Gries módszere
Szekvenciális programok kategóriái strukturálatlan strukturált NEM-DETERMINISZTIKUS PROGRAMOK HELYESSÉGE Hoare-Dijkstra-Gries módszere determinisztikus valódi korai nem-determinisztikus általános fejlett
RészletesebbenAlgoritmusok helyességének bizonyítása. A Floyd-módszer
Algoritmusok helyességének bizonyítása A Floyd-módszer Algoritmusok végrehajtása Egy A algoritmus esetében a változókat három változótípusról beszélhetünk, melyeket az X, Y és Z vektorokba csoportosítjuk
Részletesebben... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak.
Párhuzamos programok Legyen S parbegin S 1... S n parend; program. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak. Folyamat
RészletesebbenAlgoritmizálás, adatmodellezés tanítása 6. előadás
Algoritmizálás, adatmodellezés tanítása 6. előadás Tesztelési módszerek statikus tesztelés kódellenőrzés szintaktikus ellenőrzés szemantikus ellenőrzés dinamikus tesztelés fekete doboz módszerek fehér
RészletesebbenLogika és informatikai alkalmazásai kiskérdések február Mikor mondjuk, hogy az F formula a G-nek részformulája?
,,Alap kiskérdések Logika és informatikai alkalmazásai kiskérdések 2012. február 19. 1. Hogy hívjuk a 0 aritású függvényjeleket? 2. Definiálja a termek halmazát. 3. Definiálja a formulák halmazát. 4. Definiálja,
RészletesebbenProgramok értelmezése
Programok értelmezése Kód visszafejtés. Izsó Tamás 2016. szeptember 22. Izsó Tamás Programok értelmezése/ 1 Section 1 Programok értelmezése Izsó Tamás Programok értelmezése/ 2 programok szemantika értelmezése
Részletesebben5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás
Elemi programok Definíció Az S A A program elemi, ha a A : S(a) { a, a, a, a,..., a, b b a}. A definíció alapján könnyen látható, hogy egy elemi program tényleg program. Speciális elemi programok a kövekezők:
RészletesebbenModellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék
Modellellenőrzés dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Mit szeretnénk elérni? Informális vagy félformális tervek Informális követelmények Formális modell: KS, LTS, TA
RészletesebbenRészletes szoftver tervek ellenőrzése
Részletes szoftver tervek ellenőrzése Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.mit.bme.hu/~majzik/ Tartalomjegyzék A részletes
RészletesebbenBevezetés az informatikába
Bevezetés az informatikába 6. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.
Részletesebben8. Komponens elvű programfejlesztés. Ágens, akció, cél, kontraktus.
8. Komponens elvű programfejlesztés. Ágens, akció, cél, kontraktus. Ágens rendszer definíciója. Példák. Fairness. (Fair tulajdonság). Gyenge fair követelmény. A fair nem determinisztikus szemantika definíciója
RészletesebbenFormális módszerek GM_IN003_1 Program verifikálás, formalizmusok
Formális módszerek GM_IN003_1 Program verifikálás, formalizmusok Program verifikálás Konkurens programozási megoldások terjedése -> verifikálás szükséges, (nehéz) logika Legszélesebb körben alkalmazott
RészletesebbenFormális szemantika. Kifejezések szemantikája. Horpácsi Dániel ELTE Informatikai Kar
Formális szemantika Kifejezések szemantikája Horpácsi Dániel ELTE Informatikai Kar 2016-2017-2 Az előadás témája Egyszerű kifejezések formális szemantikája Az első lépés a programozási nyelvek szemantikájának
RészletesebbenSzoftver-modellellenőrzés absztrakciós módszerekkel
Szoftver-modellellenőrzés absztrakciós módszerekkel Hajdu Ákos Formális módszerek 2017.03.22. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék 1 BEVEZETŐ 2
RészletesebbenAlapszintű formalizmusok
Alapszintű formalizmusok dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Mit szeretnénk elérni? Informális tervek Informális követelmények Formális modell Formalizált követelmények
RészletesebbenProgramkonstrukciók A programkonstrukciók programfüggvényei Levezetési szabályok. 6. előadás. Programozás-elmélet. Programozás-elmélet 6.
Programkonstrukciók Definíció Legyen π feltétel és S program A-n. A DO A A relációt az S-ből a π feltétellel képezett ciklusnak nevezzük, és (π, S)-sel jelöljük, ha 1. a / [π] : DO (a) = { a }, 2. a [π]
RészletesebbenAlgoritmizálás és adatmodellezés tanítása 1. előadás
Algoritmizálás és adatmodellezés tanítása 1. előadás Algoritmus-leíró eszközök Folyamatábra Irányított gráf, amely csomópontokból és őket összekötő élekből áll, egyetlen induló és befejező éle van, az
RészletesebbenSegédanyagok. Formális nyelvek a gyakorlatban. Szintaktikai helyesség. Fordítóprogramok. Formális nyelvek, 1. gyakorlat
Formális nyelvek a gyakorlatban Formális nyelvek, 1 gyakorlat Segédanyagok Célja: A programozási nyelvek szintaxisának leírására használatos eszközök, módszerek bemutatása Fogalmak: BNF, szabály, levezethető,
RészletesebbenALAPFOGALMAK 1. A reláció az program programfüggvénye, ha. Azt mondjuk, hogy az feladat szigorúbb, mint az feladat, ha
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
RészletesebbenTemporális logikák és modell ellenırzés
Temporális logikák és modell ellenırzés Temporális logikák Modális logika: kijelentések különböző módjainak tanulmányozására vezették be (eredetileg filozófusok). Ilyen módok: esetleg, mindig, szükségszerűen,
RészletesebbenOsztott rendszer. Osztott rendszer informális definíciója
Osztott rendszer Osztott rendszer informális definíciója Egymástól elkülönülten létező program-komponensek egy halmaza. A komponensek egymástól függetlenül dolgoznak saját erőforrásukkal. A komponensek
RészletesebbenElőfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból
ÜTEMTERV Programozás-elmélet c. tárgyhoz (GEMAK233B, GEMAK233-B) BSc gazdaságinformatikus, programtervező informatikus alapszakok számára Óraszám: heti 2+0, (aláírás+kollokvium, 3 kredit) 2019/20-es tanév
RészletesebbenModellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék
Modellellenőrzés dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Mit szeretnénk elérni? Informális vagy félformális tervek Informális követelmények Formális modell: KS, LTS, TA
RészletesebbenSzoftver karbantartási lépések ellenőrzése
Szoftverellenőrzési technikák (vimim148) Szoftver karbantartási lépések ellenőrzése Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék http://www.inf.mit.bme.hu/
Részletesebben1. előadás: Halmazelmélet, számfogalom, teljes
1. előadás: Halmazelmélet, számfogalom, teljes indukció Szabó Szilárd Halmazok Halmaz: alapfogalom, bizonyos elemek (matematikai objektumok) összessége. Egy halmaz akkor adott, ha minden objektumról eldönthető,
RészletesebbenNagy Gábor compalg.inf.elte.hu/ nagy ősz
Diszkrét matematika 1. középszint 2016. ősz 1. Diszkrét matematika 1. középszint 2. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Mérai László diái alapján Komputeralgebra
RészletesebbenA modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel
A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel Majzik István Micskei Zoltán BME Méréstechnika és Információs Rendszerek Tanszék 1 Modell alapú fejlesztési folyamat (részlet)
RészletesebbenA modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel
A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel Majzik István Micskei Zoltán BME Méréstechnika és Információs Rendszerek Tanszék 1 Modell alapú fejlesztési folyamat (részlet)
RészletesebbenModell alapú tesztelés mobil környezetben
Modell alapú tesztelés mobil környezetben Micskei Zoltán Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék A terület behatárolása Testing is an activity performed
RészletesebbenA programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai
A programozás alapjai 1 1. előadás Híradástechnikai Tanszék Amiről szólesz: A tárgy címe: A programozás alapjai A számítógép részegységei, alacsony- és magasszintű programnyelvek, az imperatív programozási
RészletesebbenBánsághi Anna 2014 Bánsághi Anna 1 of 68
IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 3. ELŐADÁS - PROGRAMOZÁSI TÉTELEK 2014 Bánsághi Anna 1 of 68 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív
RészletesebbenA Formális nyelvek vizsga teljesítése. a) Normál A vizsgán 60 pont szerezhet, amely két 30 pontos részb l áll össze az alábbi módon:
A Formális nyelvek vizsga teljesítése a) Normál A vizsgán 60 pont szerezhet, amely két 30 pontos részb l áll össze az alábbi módon: 1. Öt rövid kérdés megválaszolása egyenként 6 pontért, melyet minimum
Részletesebben2. Rekurzió. = 2P2(n,n) 2 < 2P2(n,n) 1
2. Rekurzió Egy objektum definícióját rekurzívnak nevezünk, ha a definíció tartalmazza a definiálandó objektumot. Egy P eljárást (vagy függvényt) rekurzívnak nevezünk, ha P utasításrészében előfordul magának
RészletesebbenFormális nyelvek - 9.
Formális nyelvek - 9. Csuhaj Varjú Erzsébet Algoritmusok és Alkalmazásaik Tanszék Informatikai Kar Eötvös Loránd Tudományegyetem H-1117 Budapest Pázmány Péter sétány 1/c E-mail: csuhaj@inf.elte.hu 1 Véges
RészletesebbenKorlátos modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék
Korlátos modellellenőrzés dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Hol tartunk most? Alacsony szintű formalizmusok (KS, LTS, KTS) Magasabb szintű formalizmusok Temporális
RészletesebbenBASH script programozás II. Vezérlési szerkezetek
06 BASH script programozás II. Vezérlési szerkezetek Emlékeztető Jelölésbeli különbség van parancs végrehajtása és a parancs kimenetére való hivatkozás között PARANCS $(PARANCS) Jelölésbeli különbség van
RészletesebbenKaposi Ambrus. University of Nottingham Functional Programming Lab. Hackerspace Budapest 2015. január 6.
Bizonyítás és programozás Kaposi Ambrus University of Nottingham Functional Programming Lab Hackerspace Budapest 2015. január 6. Bizonyítás, érvelés Példa: sáros a csizmám ha vizes a föld, esett az eső
RészletesebbenElérhetőségi analízis Petri hálók dinamikus tulajdonságai
Elérhetőségi analízis Petri hálók dinamikus tulajdonságai dr. Bartha Tamás Dr. Pataricza András BME Méréstechnika és Információs Rendszerek Tanszék Petri hálók vizsgálata Az elemzés mélysége szerint: Vizsgálati
RészletesebbenElsőrendű logika szintaktikája és szemantikája. Logika (3. gyakorlat) 0-adrendű szemantika 2009/10 II. félév 1 / 1
Elsőrendű logika szintaktikája és szemantikája Logika és számításelmélet, 3. gyakorlat 2009/10 II. félév Logika (3. gyakorlat) 0-adrendű szemantika 2009/10 II. félév 1 / 1 Az elsőrendű logika Elemek egy
RészletesebbenDiszkrét matematika I.
Diszkrét matematika I. középszint 2013 ősz 1. Diszkrét matematika I. középszint 8. előadás Mérai László merai@compalg.inf.elte.hu compalg.inf.elte.hu/ merai Komputeralgebra Tanszék 2013 ősz Kombinatorika
RészletesebbenA digitális számítás elmélete
A digitális számítás elmélete 8. előadás ápr. 16. Turing gépek és nyelvtanok A nyelvosztályok áttekintése Turing gépek és a természetes számokon értelmezett függvények Áttekintés Dominó Bizonyítások: L
RészletesebbenS0-01 Szintézis és verifikáció (Programozás elmélet)
S0-01 Szintézis és verifikáció (Programozás elmélet) Tartalom 1. Programozási alapfogalmak 2. Elemi programok és program konstrukciók definíciói 3. Nem-determinisztikus strukturált programok formális verifikációja
RészletesebbenElsőrendű logika. Mesterséges intelligencia március 28.
Elsőrendű logika Mesterséges intelligencia 2014. március 28. Bevezetés Ítéletkalkulus: deklaratív nyelv (mondatok és lehetséges világok közti igazságrelációk) Részinformációkat is kezel (diszjunkció, negáció)
Részletesebben2. Visszalépéses keresés
2. Visszalépéses keresés Visszalépéses keresés A visszalépéses keresés egy olyan KR, amely globális munkaterülete: egy út a startcsúcsból az aktuális csúcsba (az útról leágazó még ki nem próbált élekkel
RészletesebbenFordítás Kódoptimalizálás
Fordítás Kódoptimalizálás Kód visszafejtés. Izsó Tamás 2016. október 20. Izsó Tamás Fordítás Kódoptimalizálás / 1 Aktív változók Angol irodalomban a Live Variables kifejezést használják, míg az azt felhasználó
RészletesebbenS0-02 Típusmodellek (Programozás elmélet)
S0-02 Típusmodellek (Programozás elmélet) Tartalom 1. Absztrakt adattípus 2. Adattípus specifikációja 3. Adattípus osztály 4. Paraméterátadás 5. Reprezentációs függvény 6. Öröklődés és polimorfizmus 7.
RészletesebbenFFT. Második nekifutás. Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék október 2.
TARTALOMJEGYZÉK Polinomok konvolúviója A DFT és a maradékos osztás Gyűrűk támogatás nélkül Második nekifutás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2015. október 2. TARTALOMJEGYZÉK Polinomok
Részletesebben1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje
1. Alapfogalmak 1.1. Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt
RészletesebbenA Formális nyelvek vizsga teljesítése. a) Normál A vizsgán 60 pont szerezhet, amely két 30 pontos részb l áll össze az alábbi módon:
A Formális nyelvek vizsga teljesítése a) Normál A vizsgán 60 pont szerezhet, amely két 30 pontos részb l áll össze az alábbi módon: 1. Öt kis kérdés megválaszolása egyenként 6 pontért, melyet minimum 12
RészletesebbenHardver és szoftver rendszerek verifikációja Röviden megválaszolható kérdések
Hardver és szoftver rendszerek verifikációja Röviden megválaszolható kérdések 1. Az informatikai rendszereknél mit ellenőriznek validációnál és mit verifikációnál? 2. A szoftver verifikációs technikák
RészletesebbenProgramozási segédlet
Programozási segédlet Programozási tételek Az alábbiakban leírtam néhány alap algoritmust, amit ismernie kell annak, aki programozásra adja a fejét. A lista korántsem teljes, ám ennyi elég kell legyen
Részletesebben9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum.
Programozási tételek Programozási feladatok megoldásakor a top-down (strukturált) programtervezés esetén három vezérlési szerkezetet használunk: - szekvencia - elágazás - ciklus Eddig megismertük az alábbi
RészletesebbenSpecifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.
Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt kimeneti adatot
RészletesebbenHalmazelmélet. 1. előadás. Farkas István. DE ATC Gazdaságelemzési és Statisztikai Tanszék. Halmazelmélet p. 1/1
Halmazelmélet 1. előadás Farkas István DE ATC Gazdaságelemzési és Statisztikai Tanszék Halmazelmélet p. 1/1 A halmaz fogalma, jelölések A halmaz fogalmát a matematikában nem definiáljuk, tulajdonságaival
RészletesebbenKomputeralgebra Rendszerek
Komputeralgebra Rendszerek Programozás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2014. február 23. TARTALOMJEGYZÉK 1 of 28 TARTALOMJEGYZÉK I 1 TARTALOMJEGYZÉK 2 Értékadás MAPLE -ben SAGE -ben 3
RészletesebbenLogika es sz am ıt aselm elet I. r esz Logika Negyedik el oad as 1/26
1/26 Logika és számításelmélet I. rész Logika Negyedik előadás Tartalom 2/26 Az elsőrendű logika szemantikája Formulák és formulahalmazok szemantikus tulajdonságai Elsőrendű logikai nyelv interpretációja
RészletesebbenSzoftverminőségbiztosítás
NGB_IN003_1 SZE 2014-15/2 (13) Szoftverminőségbiztosítás Szoftverminőség és formális módszerek Formális módszerek Formális módszer formalizált módszer(tan) Formális eljárások alkalmazása a fejlesztésben
RészletesebbenLogika es sz am ıt aselm elet I. r esz Logika 1/36
1/36 Logika és számításelmélet I. rész Logika 2/36 Elérhetőségek Tejfel Máté Déli épület, 2.606 matej@inf.elte.hu http://matej.web.elte.hu Tankönyv 3/36 Tartalom 4/36 Bevezető fogalmak Ítéletlogika Ítéletlogika
RészletesebbenValószínűségi modellellenőrzés Markov döntési folyamatokkal
Valószínűségi modellellenőrzés Markov döntési folyamatokkal Hajdu Ákos Szoftver verifikáció és validáció 2015.12.09. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek
RészletesebbenKOMPUTER-ALGEBRA RENDSZEREK VERIFIKÁCIÓJA
KOMPUTER-ALGEBRA RENDSZEREK VERIFIKÁCIÓJA Szoftver Verifikáció és Validáció, 2015 Ősz Vaitkus Márton Tartalom Motiváció Maple MiniMaple MiniMaple típusellenőrzése MiniMaple formális specifikációja MiniMaple
Részletesebben2. Logika gyakorlat Függvények és a teljes indukció
2. Logika gyakorlat Függvények és a teljes indukció Folláth János Debreceni Egyetem - Informatika Kar 2012/13. I. félév Áttekintés 1 Függvények Relációk Halmazok 2 Természetes számok Formulák Definíció
RészletesebbenWebprogramozás szakkör
Webprogramozás szakkör Előadás 5 (2012.04.09) Programozás alapok Eddig amit láttunk: Programozás lépései o Feladat leírása (specifikáció) o Algoritmizálás, tervezés (folyamatábra, pszeudokód) o Programozás
RészletesebbenIsmeretalapú modellezés XI. Leíró logikák
XI. Leíró logikák 1 eddig volt nyílt internetes rendszerekben miért van szükség ismeretalapú re ontológia készítés kérdései ontológiák jellemzői milyen ontológiák vannak most jön mai internetes ontológiák
RészletesebbenMatematika alapjai; Feladatok
Matematika alapjai; Feladatok 1. Hét 1. Tekintsük a,, \ műveleteket. Melyek lesznek a.) kommutativok b.) asszociativak c.) disztributívak-e a, műveletek? Melyik melyikre? 2. Fejezzük ki a műveletet a \
RészletesebbenNagy Gábor compalg.inf.elte.hu/ nagy ősz
Diszkrét matematika 1. középszint 2017. ősz 1. Diszkrét matematika 1. középszint 9. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Mérai László diái alapján Komputeralgebra
RészletesebbenA félév során előkerülő témakörök
A félév során előkerülő témakörök rekurzív algoritmusok rendező algoritmusok alapvető adattípusok, adatszerkezetek, és kapcsolódó algoritmusok dinamikus programozás mohó algoritmusok gráf algoritmusok
RészletesebbenHatékony technikák modellellenőrzéshez: Korlátos modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék
Hatékony technikák modellellenőrzéshez: Korlátos modellellenőrzés dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Hol tartunk most? Alacsony szintű formalizmusok (KS, LTS, KTS)
Részletesebben2. Visszalépéses stratégia
2. Visszalépéses stratégia A visszalépéses keres rendszer olyan KR, amely globális munkaterülete: út a startcsúcsból az aktuális csúcsba (ezen kívül a még ki nem próbált élek nyilvántartása) keresés szabályai:
RészletesebbenVéges automaták, reguláris nyelvek
Véges automaták, reguláris nyelvek Kiegészítő anyag az lgoritmuselmélet tárgyhoz (a Rónyai Ivanyos Szabó: lgoritmusok könyv mellé) Friedl Katalin BME SZIT friedl@cs.bme.hu 27. augusztus 3. véges automata
RészletesebbenProgramozási Módszertan definíciók, stb.
Programozási Módszertan definíciók, stb. 1. Bevezetés Egy adat típusát az adat által felvehető lehetséges értékek halmaza (típusérték halmaz, TÉH), és az ezen értelmezett műveletek (típusműveletek) együttesen
RészletesebbenAutomatikus tesztgenerálás modell ellenőrző segítségével
Méréstechnika és Információs Rendszerek Tanszék Automatikus tesztgenerálás modell ellenőrző segítségével Micskei Zoltán műszaki informatika, V. Konzulens: Dr. Majzik István Tesztelés Célja: a rendszerben
RészletesebbenKlasszikus algebra előadás. Waldhauser Tamás április 14.
Klasszikus algebra előadás Waldhauser Tamás 2014. április 14. Többhatározatlanú polinomok 4.3. Definíció. Adott T test feletti n-határozatlanú monomnak nevezzük az ax k 1 1 xk n n alakú formális kifejezéseket,
RészletesebbenDiszkrét matematika I.
Diszkrét matematika I. középszint 2014. ősz 1. Diszkrét matematika I. középszint 2. előadás Mérai László diái alapján Komputeralgebra Tanszék 2014. ősz Matematikai logika Diszkrét matematika I. középszint
RészletesebbenProgramfejlesztési Modellek
Programfejlesztési Modellek Programfejlesztési fázisok: Követelmények leírása (megvalósíthatósági tanulmány, funkcionális specifikáció) Specifikáció elkészítése Tervezés (vázlatos és finom) Implementáció
RészletesebbenI. A DIGITÁLIS ÁRAMKÖRÖK ELMÉLETI ALAPJAI
I. A DIGITÁLIS ÁRAMKÖRÖK ELMÉLETI ALAPJAI 1 A digitális áramkörökre is érvényesek a villamosságtanból ismert Ohm törvény és a Kirchhoff törvények, de az elemzés és a tervezés rendszerint nem ezekre épül.
RészletesebbenLogika és számításelmélet. 10. előadás
Logika és számításelmélet 10. előadás Rice tétel Rekurzíve felsorolható nyelvek tulajdonságai Tetszőleges P RE halmazt a rekurzívan felsorolható nyelvek egy tulajdonságának nevezzük. P triviális, ha P
RészletesebbenProgramozási módszertan. Függvények rekurzív megadása "Oszd meg és uralkodj" elv, helyettesítő módszer, rekurziós fa módszer, mester módszer
PM-03 p. 1/13 Programozási módszertan Függvények rekurzív megadása "Oszd meg és uralkodj" elv, helyettesítő módszer, rekurziós fa módszer, mester módszer Werner Ágnes Villamosmérnöki és Információs Rendszerek
RészletesebbenOccam 1. Készítette: Szabó Éva
Occam 1. Készítette: Szabó Éva Párhuzamos programozás Egyes folyamatok (processzek) párhuzamosan futnak. Több processzor -> tényleges párhuzamosság Egy processzor -> Időosztásos szimuláció Folyamatok közötti
RészletesebbenMesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008
Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 007/008 Az Előadások Témái Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció i stratégiák Szemantikus hálók / Keretrendszerek
RészletesebbenÍTÉLETKALKULUS (NULLADRENDŰ LOGIKA)
ÍTÉLETKALKULUS SZINTAXIS ÍTÉLETKALKULUS (NULLADRENDŰ LOGIKA) jelkészlet elválasztó jelek: ( ) logikai műveleti jelek: ítéletváltozók (logikai változók): p, q, r,... ítéletkonstansok: T, F szintaxis szabályai
RészletesebbenRendszermodellezés. Modellellenőrzés. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék
Rendszermodellezés Modellellenőrzés Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Ismétlés: Mire használunk modelleket? Kommunikáció, dokumentáció Gondolkodás,
RészletesebbenSzkriptnyelvek. 1. UNIX shell
Szkriptnyelvek 1. UNIX shell Szkriptek futtatása Parancsértelmez ő shell script neve paraméterek shell script neve paraméterek Ebben az esetben a szkript tartalmazza a parancsértelmezőt: #!/bin/bash Szkriptek
RészletesebbenKészítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19.
Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19. Programkészítés Megrendelői igények begyűjtése Megoldás megtervezése (algoritmuskészítés)
RészletesebbenVáltozók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):
Javascript Változók Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai): Név Érték Típus Memóriacím A változó értéke (esetleg más attribútuma is) a program futása
RészletesebbenModellellenőrzés a vasút automatikai rendszerek fejlesztésében. XIX. Közlekedésfejlesztési és beruházási konferencia Bükfürdő
Modellellenőrzés a vasút automatikai rendszerek fejlesztésében XIX. Közlekedésfejlesztési és beruházási konferencia Bükfürdő 2018.04.25-27. Tartalom 1. Formális módszerek state of the art 2. Esettanulmány
RészletesebbenSor és oszlopkalkulus
Adatbáziskezelés Sor és oszlopkalkulus Csima Judit BME, VIK, Számítástudományi és Információelméleti Tanszék 2017. szeptember 29. Csima Judit Adatbáziskezelés Sor és oszlopkalkulus 1 / 1 Sorkalkulus Formális
RészletesebbenNagy Gábor compalg.inf.elte.hu/ nagy ősz
Diszkrét matematika 1. középszint 2017. ősz 1. Diszkrét matematika 1. középszint 6. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Mérai László diái alapján Komputeralgebra
RészletesebbenFraktálok. Kontrakciók Affin leképezések. Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék. TARTALOMJEGYZÉK Kontrakciók Affin transzformációk
Fraktálok Kontrakciók Affin leképezések Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék TARTALOMJEGYZÉK 1 of 71 A Lipschitz tulajdonság ÁTMÉRŐ, PONT ÉS HALMAZ TÁVOLSÁGA Definíció Az (S, ρ) metrikus tér
RészletesebbenInformációk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása
1 Információk 2 A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin Elérhetőség mesko.katalin@tfk.kefo.hu Fogadóóra: szerda 9:50-10:35 Számonkérés időpontok Április 25. 9 00 Május 17. 9 00 Június
RészletesebbenKövetelmények formalizálása: Temporális logikák. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék
Követelmények formalizálása: Temporális logikák dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék 1 Mire kellenek a temporális logikák? 2 Motivációs mintapélda: Kölcsönös kizárás 2
Részletesebben6. Közös változóval rendelkező párhuzamos program, Közös változó,
6. Közös változóval rendelkező párhuzamos program, Közös változó, Reynold kritérium. Atomi művelet, atomi utasítás. szintaxis, szemantika, tulajdonságok. Szinkronizációs párhuzamos program, szintaxis,
RészletesebbenAz UPPAAL egyes modellezési lehetőségeinek összefoglalása. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék
Az UPPAAL egyes modellezési lehetőségeinek összefoglalása Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Résztvevők együttműködése (1) Automaták interakciói üzenetküldéssel Szinkron
RészletesebbenSpecifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.
Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt kimeneti adatot
RészletesebbenJava programozási nyelv
Java programozási nyelv 2. rész Vezérlő szerkezetek Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/23 Tartalomjegyzék
RészletesebbenDeníciók és tételek a beugró vizsgára
Deníciók és tételek a beugró vizsgára (a szóbeli viszgázás jogáért) Utolsó módosítás: 2008. december 2. 2 Bevezetés Számítási problémának nevezünk egy olyan, a matematika nyelvén megfogalmazott kérdést,
Részletesebben7.4. A programkonstrukciók és a kiszámíthatóság
H @ tj 68 7 PROGRAMKONSTRUKCIÓK 74 A programkonstrukciók és a kiszámíthatóság Ebben az alfejezetben kis kitérőt teszünk a kiszámíthatóság-elmélet felé, és megmutatjuk, hog az imént bevezetett három programkonstrukció
RészletesebbenPredikátumkalkulus. 1. Bevezet. 2. Predikátumkalkulus, formalizálás. Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák.
Predikátumkalkulus Predikátumkalkulus alapfogalmai, formalizálás, tagadás, logikailag igaz formulák. 1. Bevezet Nézzük meg a következ két kijelentést: Minden almához tartozik egy fa, amir l leesett. Bármely
RészletesebbenProgramozás I. 1. előadás: Algoritmusok alapjai. Sergyán Szabolcs
Programozás I. 1. előadás: Algoritmusok alapjai Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Alkalmazott Informatikai Intézet 2015. szeptember 7. Sergyán
Részletesebben5.3. Logika a relációkhoz
236 5. Algebrai és logikai lekérdező nyelvek! 5.2.3. feladat. Az egyik dolog, amit az eredeti 2.4.5. alfejezetben definiált vetítési művelettel szemben elérhetünk a kiterjesztett vetítési művelet segítségével,
Részletesebben