Solving design problems in a logic-based visual design environment


Omid Banyasad
Philip T. Cox

Author Addresses: 

Faculty of Computer Science
Dalhousie University
6050 University Ave.
PO Box 15000
Halifax, Nova Scotia, Canada
B3H 4R2


Designs of complex objects often include parameters which, when given values, provide a realisation of a specific example of the design. Such parametrised designs, therefore, actually represent families of objects. In order to provide the programming capabilities necessary for building such parametrised designs, some Computer-Aided Design systems include programming languages or provide interfaces to them. This creates a sharp division in the design process between designer and programmer.

To address this discontinuity, a Language for Structured Design (lsd) has been proposed as an extension to a visual logic programming language. In lsd, design components and operations on them are homogeneously represented in one language.

Here we report on another advantage of the lsd approach; namely, that visual logic programming, used as the engine to drive the parametrised assembly of objects, also provides powerful symbolic problem-solving capability. This allows the designer/programmer to work at a higher level, giving descriptive rather than prescriptive specifications of a design. Hence lsd integrates problem solving, synthesis, and modeling in a single homogeneous programming/design environment. We demonstrate the problem-solving capabilities of lsd using the masterkeying problem.

Tech Report Number: 
Report Date: 
November 27, 2001
File CS-2001-04.ps21.8 MB