HOTGP – Higher-Order Typed Genetic Programming

04/06/2023
by   Matheus Campos Fernandes, et al.
0

Program synthesis is the process of generating a computer program following a set of specifications, which can be a high-level description of the problem and/or a set of input-output examples. The synthesis can be modeled as a search problem in which the search space is the set of all the programs valid under a grammar. As the search space is vast, brute force is usually not viable and search heuristics, such as genetic programming, also have difficulty navigating it without any guidance. In this paper we present HOTGP, a new genetic programming algorithm that synthesizes pure, typed, and functional programs. HOTGP leverages the knowledge provided by the rich data-types associated with the specification and the built-in grammar to constrain the search space and improve the performance of the synthesis. The grammar is based on Haskell's standard base library (the synthesized code can be directly compiled using any standard Haskell compiler) and includes support for higher-order functions, λ-functions, and parametric polymorphism. Experimental results show that, when compared to 6 state-of-the-art algorithms using a standard set of benchmarks, HOTGP is competitive and capable of synthesizing the correct programs more frequently than any other of the evaluated algorithms.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/21/2017

Synthesizing Imperative Programs from Examples Guided by Static Analysis

We present a novel algorithm that synthesizes imperative programs for in...
research
06/09/2022

Functional Code Building Genetic Programming

General program synthesis has become an important application area for g...
research
08/09/2020

Code Building Genetic Programming

In recent years the field of genetic programming has made significant ad...
research
02/18/2021

Refinement Type Directed Search for Meta-Interpretive-Learning of Higher-Order Logic Programs

The program synthesis problem within the Inductive Logic Programming (IL...
research
06/01/2023

Genetic Algorithms for Searching a Matrix of Metagrammars for Synthesis

Syntax-guided synthesis is a paradigm in program synthesis in which the ...
research
06/08/2023

Solving Novel Program Synthesis Problems with Genetic Programming using Parametric Polymorphism

Contemporary genetic programming (GP) systems for general program synthe...
research
06/03/2023

LambdaBeam: Neural Program Search with Higher-Order Functions and Lambdas

Search is an important technique in program synthesis that allows for ad...

Please sign up or login with your details

Forgot password? Click here to reset