Automated programming, symbolic computation, machine learning: my personal view
-
Published:2023-10
Issue:5
Volume:91
Page:569-589
-
ISSN:1012-2443
-
Container-title:Annals of Mathematics and Artificial Intelligence
-
language:en
-
Short-container-title:Ann Math Artif Intell
Abstract
AbstractIn this note, I present my personal view on the interaction of the three areas Automated Programming, Symbolic Computation, and Machine Learning. Programming is the activity of finding a (hopefully) correct program (algorithm) for a given problem. Programming is central to automation in all areas and is considered one of the most creative human activities. However, already very early in the history of programming, people started to “jump to the meta-level” of programming, i.e., started to develop procedures that automate, or semi-automate, (various aspects or parts of) the process of programming. This area has various names like “Automated Programming”, “Automated Algorithm Synthesis”, etc. Developing compilers can be considered an early example of a problem in automated programming. Automated reasoners for proving the correctness of programs with respect to a specification is an advanced example of a topic in automated programming. ChatGPT producing (amazingly good) programs from problem specifications in natural language is a recent example of automated programming. Programming tends to become the most important activity as the level of technological sophistication increases. Therefore, automating programming is maybe the most exciting and relevant technological endeavor today. It also will have enormous impact on the global job market in the software industry. Roughly, I see two main approaches to automated programming:
symbolic computation
and machine learning.
In this note, I explain how the two approaches work and that they are fundamentally different because they address two completely different ways of how problems are specified. Together, the two approaches constitute (part of) what some people like to call “artificial intelligence”. In my analysis, both approaches are just part of (algorithmic) mathematics. The approaches, like all non-trivial mathematical methods, need quite some intelligence on the side of the human inventors of the methods. However, applying the methods is just “machine execution” of algorithms. It is misleading to call the application “machine intelligence” or “artificial intelligence”. The analysis of the two approaches to automated programming also suggests that the two approaches, in the future, should be combined to achieve even higher levels of sophistication. At the end of this note, I propose some research questions for this new direction.
Funder
Johannes Kepler University Linz
Publisher
Springer Science and Business Media LLC
Subject
Applied Mathematics,Artificial Intelligence
Reference16 articles.
1. Buchberger, B.: Meditation in Today’s World. Part I: Science, Technology, Economy, Welfare: The Reflexion Principle. (2022). Video on Youtube: https://youtu.be/rNhRn7WMT_U 2. Buchberger, B.: Symbolic computation (an editorial). J. Symb. Comput. 1(1), 1–6 (1985). https://doi.org/10.1016/S0747-7171(85)80025-0 3. Grover, A., Thornton, C., Singh, P.: Automated algorithm synthesis: A survey. ACM Comput. Surv. 54(2), 1–36 (2021) 4. Buchberger, B., Jebelean, T., Kutsia, T., Maletzky, A., Windsteiger, W.: Theorema 2.0: Computer-assisted natural-style mathematics. J. Formaliz. Reason. 9(1), 149–185 (2016). https://doi.org/10.6092/issn.1972-5787/4568 5. Buchberger, B.: Algorithm invention and verification by lazy thinking. In: Petcu, D., Negru, V., Zaharie, D., Jebelean, T. (eds.) Proceedings of SYNASC 2003 (5th International Workshop on Symbolic and Numeric Algorithms for Scientific Computing), Timişoara, Romania, October 1–4, 2003, pp. 2–26. Mirton Publisher, Timişoara (2003). ISBN: 973-661-104-3
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Logic program proportions;Annals of Mathematics and Artificial Intelligence;2023-12-06
|
|