Program Synthesis
프로그램 합성은 주어진 사양이나 요구사항에서 프로그램 또는 코드 조각을 자동으로 생성하는 과정을 의미합니다. 이는 코딩 과정에서 인간의 개입을 줄이고 오류율을 낮추며 개발 효율성을 높이기 위한 목적으로 사용됩니다. 본질적으로 프로그램 합성은 가능한 프로그램의 공간을 탐색하고, 제약 조건 해결, 기호 실행, 유전 알고리즘 등의 방법을 통해 이 탐색을 안내하는 고급 알고리즘, 인공 지능, 및 기계 학습 기술을 활용합니다.