Domain-based program synthesis using planning and derivational analogy
Bhansali, Sanjay
This item is only available for download by members of the University of Illinois community. Students, faculty, and staff at the U of I may log in with your NetID and password to view the item. If you are trying to access an Illinois-restricted dissertation or thesis, you can request a copy through your library's Inter-Library Loan office or purchase a copy directly from ProQuest.
Permalink
https://hdl.handle.net/2142/21384
Description
Title
Domain-based program synthesis using planning and derivational analogy
Author(s)
Bhansali, Sanjay
Issue Date
1991
Doctoral Committee Chair(s)
Harandi, Mehdi T.
Department of Study
Computer Science
Discipline
Computer Science
Degree Granting Institution
University of Illinois at Urbana-Champaign
Degree Name
Ph.D.
Degree Level
Dissertation
Keyword(s)
Computer Science
Language
eng
Abstract
In this thesis, I propose a domain-based, integrated framework for program synthesis that emphasizes the reuse of software components and past experience in solving problems. A crucial component of the framework is a concept dictionary that contains a description of domain related components. This forms a basis for communicating with a user in a high-level, application-oriented terms; for constructing generic, problem-solving rules, and for reasoning by analogy. The other components of the framework include a library of reusable subroutines, cliches, and derivation histories of previously solved problems, a layered rulebase, a hierarchical planner, and an analogical reasoner based on Carbonell's derivational analogy paradigm.
The planner uses the rulebase and the library to decompose a given problem in a top-down manner and synthesize a plan for solving it. The layered structure of the rule-base ensures that efficient plans are preferred over inefficient ones, and the changes needed to synthesize programs for a different domain are minimal. The analogical reasoner complements the role of the planner. It uses a set of heuristics to retrieve a problem from the derivation history library that is analogous to a current problem, and replays the derivation of the retrieved problem to synthesize a program for the current problem. A solved problem is stored back into the derivation history library, and may be used to solve a different problem in a future context.
A prototype system, APU, based on the above framework has been implemented for the domain of UNIX programming. We describe a set of experiments designed to test the performance of APU, and provide empirical results demonstrating the feasibility and usefulness of the approach.
Use this login method if you
don't
have an
@illinois.edu
email address.
(Oops, I do have one)
IDEALS migrated to a new platform on June 23, 2022. If you created
your account prior to this date, you will have to reset your password
using the forgot-password link below.