automatické programovanie
automatické programovanie — smer v metodológii programovania usilujúci sa o automatickú, prípadne automatizovanú syntézu programov z neprocedurálnych špecifikácií. Špecifikácia úlohy iba opíše, čo má program vytvoriť ako výstup z daného vstupu. Nemá však predurčovať postup (procedúru), ako sa požadovaný výstup získa. Špecifikačným jazykom môže byť napr. prirodzený jazyk, všeobecne použiteľný formálny jazyk (predikátový počet) alebo zvláštny formálny jazyk pre úzku skupinu úloh. Samotná metóda syntézy sa môže zakladať na dedukcii (odvodení cieľa zo špecifikácie v tvare axióm), indukcii (zovšeobecnení špecifických prípadov riešenia) alebo na transformácii (postupnom prepise špecifikácie do vykonateľného programu podľa transformačných pravidiel). Vzhľadom na veľkú obťažnosť úlohy automaticky vytvoriť program sa výskumné úsilie zameriava na hľadanie metód jej riešenia v interakcii medzi človekom a systémom automatizovaného programovania a na využitie metód umelej inteligencie, najmä na zahrnutie dostupných znalostí o programovaní a o samotnej úlohe do procesu syntézy programu.
O automatickom programovaní sa hovorí aj v robotike v súvislosti s automatickým vytváraním plánov činnosti robota.