The work deals with automatic deductive synthesis of functional programs. Formal specification of a program is taken as a mathematical existence theorem and while proving it, we derive a program and simultaneously prove that this program corresponds to given specification. Several problems have to be resolved for automatic synthesis: the choice of synthesis rules that allows us to derive the basic constructions of a functional program, order of rule application and choice of a particular induction rule. The method proposed here is based on the deductive tableau method. The basic method gives rules for functional program construction.To determine the proof strategy we use some external heuristics, including rippling. And for the induction hypothesis formation the combination of rippling and the deductive tableau method became very useful. The proposed techniques are implemented in the system ALISA (Automatic Lisp Synthesizer) and used for automatic synthesis of several functions in the Lisp language.
The paper deals with automated program synthesis. For program construction a case-based reasoning approach is used. The case library, organized as ontology, contains specifications and corresponding texts of already known programs. In the specification the relationship between inputs and outputs is written, the text of a corresponding program is written on a programming language. The specification of the desired program is taken as a task to find solution for, and we are looking for similar cases-specifications in the case library. If such a case is found we are trying to adapt the corresponding text of program. The main problems that occur in the implementation of the proposed approach are the following: the organization of case library, definition of similarity and ways of adaptation. We propose to keep the case library as ontology; the ALC is used to describe specifications. This representation helps to find similar specifications and to adapt the corresponding solutions.
The problem of off-road routing and terrain discretization with using visibility graphs is considered. Traditionally, routing engines find a path over a road graph, but the problem of off-road routing is also relevant. A polygon approximation method is proposed as applied to constructing a visibility graph on a plane, as well as pathfinding without constructing a complete graph for solving the problem of off-road navigation. The developed algorithm for finding supporting lines to a convex polygon on a plane and a hierarchical approach to building a visibility graph are described. The considered approaches are implemented in a software system and applied to real geographic data.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.