Az angyal-pólus - stadopédia algoritmusa
megmutatjuk az ellentétes kijelentést
Egy részlegesen definiált (nem teljesen definiált) automata egy olyan automata, amelynek "l" és / vagy "d" funkciói nincsenek teljesen meghatározva, ezért a bemeneti szavaik érvényesek és nem megengedettek.
Két automata állapotot nevezünk kompatibilisnek. Ha alkalmazása során egy tetszőleges szót a beviteli automatát található egy ilyen állapotok és ugyanazon a gépen, de más államokban, következetes szót kapott a kimeneten, azaz megfelelő, ahol mindkét megadott.
Az állapotok kompatibilitási tulajdonságai:
egy (vagyis nincs tranzitivitás).
d (am, zi) = d (an, zi) bármely zi-ben Z-ben (az átmenet kompatibilitási feltétele)
l (am, zi) = 1 (an, zi) bármely zi esetén Z-ben (a kimenet kompatibilitási feltétele)
A C állapotok kompatibilitási osztálya az állapotok halmaza, amelyek összes eleme párhuzamosan kompatibilis egymással.
A kompatibilitási osztály maximális, ha nem teljesen a másikban található. A kompatibilitási osztály is a B = d (C, zi) osztály, ha C a kompatibilitási osztály.
Az S részleges automata minimálisra csökkentésének problémája megfogalmazható egy S 'automata keresésénél, amely az összes S automata burkolat között a legkisebb számú állapotot tartalmazza. A gép minimálisra csökkentésének első lépését a nem elérhető állapotok eltávolítása kell, hogy legyen. olyan államokban, amelyekben az automata nem térhet el a kezdeti állapotból bármilyen bemeneti szóra. Továbbá a részleges automaták minimalizálására irányuló folyamat három alapvető lépésből áll:
Az összes kompatibilitási osztály megtalálása.
A minimális zárt burkolat megtalálása.
Új zárt gép beszerzése minimális zárt fedéllel.
Tekintsünk egy algoritmust a kompatibilis párok megszerzésére egy háromszög alakú tábla használatával. M.Poll és S.Angel által javasolt. A következő átmeneti és kimeneti táblák által meghatározott automata példáját fogjuk megvizsgálni:
Ez a táblázat azt mutatja, hogy a következő állapotpárok összeegyeztethetők: (1, 2), (1,4), (2,3), (3,4), (3, 5), (4, 5). Egy állapot (1, 3), (1, 5), (2, 4), (2, 5) pár nem kompatibilis. Tekintse meg a kompatibilis párok maximális kompatibilitási osztályainak megtalálását. Azt mondjuk, hogy a B (B Í A) kompatibilis az am Î A (a jelzés am
B) ha és csak akkor, ha am
Az összes maximális kompatibilitási osztály megtalálására szolgáló algoritmus a következő szintre csökken:
Elkezdünk összeállítani egy olyan kompatibilitási osztályok listáját, amelyek egy háromszög alakú tábla jobb oldali oszlopában találhatók, amely legalább egy kereszt nélküli cellát tartalmaz. A példában Φ =>.
Balra költözve minden egyes i. Oszlopra írjuk az Ai államok halmazát
ai. azaz a táblázat i. oszlopában lévő keresztek nélküli cellákhoz tartozó összes állapot halmaza. Példánkban 3
(a táblázat harmadik oszlopában nincsenek keresztek a 4. és az 5. sorban).
Minden Ai metszi az aktuális F-lista mindegyik tagjával. Van A3 = és az F listája is tartalmaz egy elemet:
Ha egy ilyen kereszteződés egynél több állapotot tartalmaz, akkor az összeillesztés eredményéhez hozzáadjuk a listát:
Ezután maximalizáljuk az eredményül kapott készletet Φ - megszüntetjük az aktuális listában lévő készletek összes ismétlését, és töröljük a lista többi készletében található összes készletet:
Adja hozzá a listához az Ai és az Ai különböző államokból álló összes pár. és nem a listának más tagjai részhalmaza Φ (i = 3 esetén nincsenek ilyen kiegészítések).
Adjuk meg a teljes lépést a második lépés összes oszlopra történő alkalmazásával:
A második lépés után kapott Φ lista összes olyan elemet tartalmaz, amelyek olyan állapotokból állnak, amelyek nem szerepelnek más maximális kompatibilitási osztályokban (példánkban nincs).
Nyilvánvaló, hogy a kapott Φ lista az összes maximális kompatibilitási osztály listáját tartalmazza. Így az általunk vizsgált automata esetében az összes kompatibilitási osztály készletét
A második szakasz - egy minimális zárt fedél megtalálása - meglehetősen bonyolult feladat, nem számunkra különös érdeklődés. Ennek az algoritmusnak a részletes leírása megtalálható SI Baranov "Mikroprogram automatizálása" című könyvében. Első zárt burkolatként a maximális kompatibilitási osztályok Φ = π, ·.