VŠ z trochu jiného úhlu

Re:VŠ z trochu jiného úhlu
« Odpověď #1215 kdy: 23. 10. 2012, 18:05:38 »
U niektorých programov sa predpokladá dlhá doba výpočtu a tam je zistenie zložitejšie / nemožné a o takých programov nám ide.
Jako možná někde je, ale praktiky si to neumím moc dobře představit. Dlouhý výpočet se logicky vždycky skládá z nějakých iterací a měl by konvergovat nějakým směrem. Kontrolovat průběžně konvergenci bude v praxi nejspíš v 99.9% stačit...

A co ta ekvivalence programů?
A já si myslel, že jsme si složitě vysvětlili, že reálné počítače jsou FSM... :)

A pro některé programy je HP také trivka :)
Myslíš "pro všechny normální programy, se kterými se normální smrtelnk potká?" ;)

Přitom Büchiho automat si v praxi jako HW nesestavíte :)
Mám takový matný pocit, že Zz-a by spíš zajímalo, co si díky znalosti TM může sestrojit - což není nic, protože TM se hodí na důkaz toho, že něco nejde, ne naopak.

Možno nie až tak - akurát viem povedať, že to ušetrilo kopu peňazí na pokusy o implementáciu riešenia HP štýlom "skončí to do 25 dní, ale keď príde signál X, tak to skončí do 29 dní, inak to skončí do ...". Namiesto toho to aj po odstránení bugu môže riešiť pracovník pomerne úspešnou heurestikou ako "už druhý deň pravidelne bliká LED na zariadení a zdá sa, že sa to pomerne hreje, tak sa to asi zacyklilo".
No tak to je právě nesmysl. Víme, že pro FSM (kterému reálný HW odpovídá) je HP řešitelný, čili poznatek, že pro TM je neřešitelný, nám neušetřil ani halíř - protože prostě v praxi zjišťujeme, že něco, co by teoreticky mělo jít, nejde kvůli fyzickým omezením.

Takto teoreticky s tím nemám absolutně žádný problém. Jen bych to chtěl vidět na vlastní oči. I důsledky obecné teorie relativity se dají pozorovat v praxi, tak určitě půjde i tohle.
No dostal jsi tři případy něčeho, co nejde, a víme to díky TM. Nic víc čekat nemůžeš, TM  je přesně na tohle - dokázat, že něco nejde ani na idealizovaném nekonečném počítači.


Zz

Re:VŠ z trochu jiného úhlu
« Odpověď #1216 kdy: 23. 10. 2012, 18:40:34 »
No dostal jsi tři případy něčeho, co nejde, a víme to díky TM. Nic víc čekat nemůžeš, TM  je přesně na tohle - dokázat, že něco nejde ani na idealizovaném nekonečném počítači.

A nebyla by tam ani jedna malá družice rozflákaná o povrch Venuše, když v ní program narazil na neřešitelný stav díky předchozí absenci analýzy z hlediska TM ? Já bych pak mohl říkat že programátor bez TM nemůže žít a tvářit se u toho tajemně 8)

Re:VŠ z trochu jiného úhlu
« Odpověď #1217 kdy: 23. 10. 2012, 18:46:36 »
A nebyla by tam ani jedna malá družice rozflákaná o povrch Venuše, když v ní program narazil na neřešitelný stav díky předchozí absenci analýzy z hlediska TM ? Já bych pak mohl říkat že programátor bez TM nemůže žít a tvářit se u toho tajemně 8)
Jo, tak nějak to je :)

A proto je tak strašlivě důležité, aby každý absolvent TM nejen znal, ale uměl i dokazovat jeho vlastnosti :)) Nehledě na to, že ani zdejší nějvětší zástánci tohodle, si to zjevně pořádně nepamatují :))

Jakub Galgonek

Re:VŠ z trochu jiného úhlu
« Odpověď #1218 kdy: 23. 10. 2012, 19:05:06 »
A co ta ekvivalence programů?
A já si myslel, že jsme si složitě vysvětlili, že reálné počítače jsou FSM... :)

Ale stejně nemůžeš sestrojit FSM, kterému jen předhodíš program a vstup a ono ti řekne zastaví-nezastaví. Prostě pro ověření ekvivalence programů pro mašinu X, budeš potřebovat mnohem silnější mašinu Y, protože na mašině X to nespočítáš. Pokud nekonečnou páskou nahradíš nekonečnou hierarchií FSM, tak ano, pro nekonečnou hierarchií FSM je ta ekvivalence řešitelná.

Re:VŠ z trochu jiného úhlu
« Odpověď #1219 kdy: 23. 10. 2012, 19:08:27 »
Ale stejně nemůžeš sestrojit FSM, kterému jen předhodíš program a vstup a ono ti řekne zastaví-nezastaví.
Dokaž! ;)  (opakuju, že se jedná o program pro FSM - jak si ten FSM nadefinuješ, to je jedno - třeba jako TM s fixní délkou pásky)

Pokud nekonečnou páskou nahradíš nekonečnou hierarchií FSM, tak ano, pro nekonečnou hierarchií FSM je ta ekvivalence řešitelná.
Ne. Já mám za to, že program pro FSM je možné rozhodnout na FSM. Možná že se mýlím, ale to bych teda rád viděl ten důkaz.


Re:VŠ z trochu jiného úhlu
« Odpověď #1220 kdy: 23. 10. 2012, 19:17:49 »
Jo pardon, v první citaci se mluví o HP, ve druhé o ekvivalenci programů. Tak teď nevím, o čem je vlastně řeč.

Dokázat ekvivalenci dvou FSM ve standardním tvaru snad umíme, ne? To je druhá přednáška z formálů. O jakém problému je teda řeč?

Jakub Galgonek

Re:VŠ z trochu jiného úhlu
« Odpověď #1221 kdy: 23. 10. 2012, 19:28:06 »
Dokázat ekvivalenci dvou FSM ve standardním tvaru snad umíme, ne?

Umíme, ale umíme to nějakým pevným FSM?

Re:VŠ z trochu jiného úhlu
« Odpověď #1222 kdy: 23. 10. 2012, 19:33:21 »
Umíme, ale umíme to nějakým pevným FSM?
Jde o to, co myslíš pevným FSM. Jakože bysme řekli, že FSM se sto stavy to dokáže pro libovolný FSM? To jistě ne. Ale to taky nikdo nepožaduje. Důležité je, že to je teoreticky řešitelné, čili informace, že pro TM to není řešitelné ani teoreticky je vcelku bezcenná, protože nám sděluje vlastnosti něčeho, co nemáme a nikdy mít nebudeme.

Co by nás mohlo zajímat, je počet stavů, které k tomu budeme potřebovat. To jo, to je zajímavá informace.

Re:VŠ z trochu jiného úhlu
« Odpověď #1223 kdy: 23. 10. 2012, 19:36:25 »
Jenom pro připomenutí - původně jsi reagoval na tohle:

Riziko že se budu marně pokoušet implementovat neimplementovatelný algoritmus si uvědomuji, jenže jediný takový problém který místní osazenstvo předvedlo je problém HP, ten se v praxi neřeší a teoretici to ani prakticky řešit neumí a žádný další předveden nebyl.

- u problému ekvivalence dvou programů pro FSM žádné "implementování neimplementovatelného algoritmu" nehrozí, protože ten algoritmus je implementovatelný.

Jakub Galgonek

Re:VŠ z trochu jiného úhlu
« Odpověď #1224 kdy: 23. 10. 2012, 19:39:59 »
Co by nás mohlo zajímat, je počet stavů, které k tomu budeme potřebovat. To jo, to je zajímavá informace.

Což je asi tak ekvivalentní tomu, jak dlouhá páska pro TS bude potřeba.

Jakub Galgonek

Re:VŠ z trochu jiného úhlu
« Odpověď #1225 kdy: 23. 10. 2012, 19:42:12 »
- u problému ekvivalence dvou programů pro FSM žádné "implementování neimplementovatelného algoritmu" nehrozí, protože ten algoritmus je implementovatelný.

Šlo mi jen o to, že pokud mám dva programy pro své PC (což je FSM, jak říkáš), tak jejich ekvivalence je implementovatelná, je ale implementovatelná na tom PC?

Re:VŠ z trochu jiného úhlu
« Odpověď #1226 kdy: 23. 10. 2012, 20:49:40 »
Šlo mi jen o to, že pokud mám dva programy pro své PC (což je FSM, jak říkáš), tak jejich ekvivalence je implementovatelná, je ale implementovatelná na tom PC?
Pokud se bavíme o skutečně praktické implementovatelnosti, tak odpověď je taková, jako v praxi téměř vždycky: Jak kdy :)
Např. když budu mít program, který má dva stavy (využívá jeden bit paměti)? V pohodě. Když budu mít program, který využívá 1GB? Hrubou silou těžko. Jde na analýzu takového programu použít nějaká heuristika? Určitě. Pomůže nám to problém vyřešit? To se uvií, až to zkusíme... No prostě normální "inženýrská" situace... To jenom v matice je všechno hnedka jasný jako facka...

Ale to je jedno, ať by to bylo tak nebo tak, základní otázku "K čemu vlastně potřebujeme TM?" to nijak neřeší. (na ni se Zz ptal) Odpověď na otázku "Je řešitelný problém zastavení TM?" nás nemusí pálit o nic víc než problém "Dá se povelem 'hot!' zastavit spřežení jednorožců?"

Jsou to prostě teoretické otázky na teoretické vlastnosti teoretického HW. Takže argumentovat, že je každý absolvent nutně potřebuje znát, je trochu... (každý ať si doplní sám)

A navíc si všimni, že ta teorie alespoň některé lidi zjevně spíš zblbne - myslí si, že vlastnosti TM můžou mechanicky aplikovat na reálný HW. Protože jim kdosi podal jakousi teorii, řekl k tomu jenom "TM je model počítače" - a skutečně se nad tím zamyslet a propojit to s praxí, na to už nezbyl čas - protože ty důkazy teoretických vlastností teoretických strojů jsou táááák složité... :)

No nic, mám nějakou práci, tak pro dnešek Jednorožcům třikrát nazdar! :)

Pavel

Re:VŠ z trochu jiného úhlu
« Odpověď #1227 kdy: 23. 10. 2012, 22:31:06 »
ked uz ste popisali tolko zbytocnosti, tak jednu pridam :)

Mam pocit, ze tu nikde nezaznela poziadavka o implementaciu problemu ekvivalentnemu s problemom obchodneho cestujuceho. (realne som 2x zazil v praxi)
Celkom by ma zaujimalo, ako by si s tym absolvent "ziadanej SOU informatickej" poradil" :P.

Predpokladam, ze by to dopadlo v duchu "ved mi to bezi na testovacich datach iba tri dni, tak dva krat vacsia realna vzorka zbehne u klienta do tyzdna" :D

poiu

Re:VŠ z trochu jiného úhlu
« Odpověď #1228 kdy: 23. 10. 2012, 22:47:22 »
Jako možná někde je, ale praktiky si to neumím moc dobře představit. Dlouhý výpočet se logicky vždycky skládá z nějakých iterací a měl by konvergovat nějakým směrem. Kontrolovat průběžně konvergenci bude v praxi nejspíš v 99.9% stačit...
To sa nezistí tak ľahko. Popísaný bug s floatami je príkladom - tam to na prvý pohľad musí konvergovať, ale vďaka implementácii floatu to tak nemusí byť (ale pri vhodných hodnotách to niekedy môže fungovať, čo je skoro najhoršie pri hľadaní chyby). A programátor to mohol ľahko brať tak, že to konverguje - v každom kroku sa mala hodnota znížíť o niečo kladné.

A co ta ekvivalence programů?
A já si myslel, že jsme si složitě vysvětlili, že reálné počítače jsou FSM... :)
To platí pre stálu veľkosť pamäti. Problém je, že ak dnes sa vyrábajú nejaké pamäti, tak zajtra už sa môžu vyrábať väčšie. A napríklad zistenie takej ekvivalencie programov by bola veľmi dobrá vec, ak by som to dokázal automaticky otestovať pre všetky PC. Už len na zjednodušenie života - k optimalizovanému algoritmu bežne píšem aj pár riadkový exponenciálny, kde je hneď vidieť, že funguje. A potom obyčajne testujem oproti sebe nejaké malé vstupy a výstupy. Keby som mal program, čo dokáže moju hypotézu o správnosti preveriť pre všetky vstupy, tak by som mal aj praktickú záruku, že všetko funguje ako má.

No tak to je právě nesmysl. Víme, že pro FSM (kterému reálný HW odpovídá) je HP řešitelný, čili poznatek, že pro TM je neřešitelný, nám neušetřil ani halíř - protože prostě v praxi zjišťujeme, že něco, co by teoreticky mělo jít, nejde kvůli fyzickým omezením.
Podľa mňa to nie sú fyzikálne obmedzenia - keby boli fyz. obmedzenia menšie, tak to stále nebudeme vedieť riešiť, lebo by sa zväčšila aj množina stavov a boli by sme tam kde predtým. Keby tu neboli ani minimálne fyzikálne obmedzenia, tak by sme už ako PC mohli mať rovno TS a je tu pôvodný problém.
A teda nám to ušetrilo peniaze - my sme zistili, že ho nevieme riešiť a je to tak. Pritom je úplne jedno, prečo ho vlastne nevieme riešiť.

KapitánRUM

Re:VŠ z trochu jiného úhlu
« Odpověď #1229 kdy: 23. 10. 2012, 22:58:33 »
Školy jsou plné šulinů chytrejch jak rádio, který přijdou do praxe a shoří jako papírovej čert, když dostanou triviální programátorské zadání, které vyžaduje alespoň povrchní znalost nějaké frameworku. Zato si můžou spočítat, jak velký jsou kokoti ;D

Neznám žádného programátora, který by musel každý den řešit problém obchodního cestujícího.
Tím se vracíme k tomu, že vy kreténi, právě teď na škole, víte hovno o tom, co budete muset dělat a děláte machry.
Fajn, užijte si to  8)