The goal of this project is to help scientists and engineers carry out computational tasks more effectively by doing research on: - The integration of symbolic and numeric computation to facilitate problem specification, exploration and result verification. - Hierarchies of reusable computational abstractions organized in libraries with well-defined navigational structures. - Exploiting commercial standards and tools for object-request brokers, compound documents, and collaboration infrastructure. The project takes a novel approach to problem-solving environments (PSEs). Its focus is on the entire process of problem-solving from initial conception, symbolic specification, solution, visualization, comparison with experimental data, and feed back. The project focuses on problem-solving environments, not merely programming environments. This focus leads to research on reusable abstractions at all levels of problem-solving. Important abstractions include the problem-solving method itself, method-specific abstractions for sequential and parallel program design, reasoning and debugging, performance analysis and tuning, and frameworks for class libraries. PSEs are more useful when they are more specific. However, rather than build one problem- solving environment for one class of user, application domain, programming language and machine, this project aims at the basic research that will enable us to develop tools for building specific PSEs. To use a metaphor, rather than doing research on workbenches we want to do research on machine tools that can be used to build workbenches. Traditional PSEs deal with extending a workstation environment whereas this project is concerned with developing structured environments for problem-solving. Scientists and engineers collaborate when they solve problems, and they share much more than code. PSEs based on collaboration also provide object-request brokering and compound multimedia document interfaces. Since this vision is both novel and ambitious, a critical aspect of the project is leveraging methods and tools developed for scientific, commercial and home-computing applications.