{"id":361034,"date":"2017-02-02T13:37:27","date_gmt":"2017-02-02T21:37:27","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/?post_type=msr-project&p=361034"},"modified":"2020-01-24T08:27:25","modified_gmt":"2020-01-24T16:27:25","slug":"program-synthesis","status":"publish","type":"msr-project","link":"https:\/\/www.microsoft.com\/en-us\/research\/project\/program-synthesis\/","title":{"rendered":"Program Synthesis"},"content":{"rendered":"

Introduction<\/h1>\n

Program synthesis is the task of automatically discovering an executable piece of code given user intent expressed using various forms of constraints such as input-output examples, demonstrations, natural language, etc. Program synthesis has direct applications for various classes of users in the technology pyramid:<\/p>\n