{"type":"ScholarlyArticle","title":"Towards a Mathematical Theory of Program Synthesis","authors":[{"name":"Masahiko Sato","slug":"masahiko-sato","given":"Masahiko","family":"Sato","affiliation":""}],"abstract":"This paper attempts to set a theoretical foundation for Program Synthesis. A programming language Prog is introduced together with its interpretation in the semantic domain D. A formal system QFT, which is an extension of the Heyting arithmetic, is then introduced in order to express specifications formally. Roughly stated, the main result is: Given a QFT-proof of the specification ~x~zA[x,z], it is possible to construct a program p such that A[x,p[x]] is true in D for any input x. Moreover, a formal proof of ~xA[x,p[x]] can also be obtained. Since any program p in Prog always terminates, the above result establishes the total correctness of the synthesized program at the same time. Finally, it is shown that any program p in Prog can be faithfully simulated by means of LISP.","doi":null,"url":"https://ijcai.org/proceedings/1979/166","pdf":"https://ijcai.org/proceedings/1979/0166.pdf","markdown":"https://ijcai.org/proceedings/1979/166.md","bibtex":"https://ijcai.org/proceedings/1979/bibtex/166","volume":{"slug":"1979","title":"Proceedings of the Sixth International Joint Conference on Artificial Intelligence","short_title":"IJCAI 1979","url":"https://ijcai.org/proceedings/1979/","year":1979,"location":"Tokyo, Japan","dates":"August 20-23, 1979","editors":"Bruce G. Buchanan","isbn":"","publisher":"International Joint Conferences on Artificial Intelligence","doi_prefix":""},"section":null,"track":"","number":166,"pages":{"first":null,"last":null},"keywords":[],"videos":[],"references":[],"license_note":"Copyright International Joint Conferences on Artificial Intelligence."}