PRODUCT NAME: VAX OPS5, Version 3.0                          SPD 27.04.04

PRODUCT DESCRIPTION

VAX OPS5 is DIGITAL's high-performance implementation of the OPS5 language 
as described in the OPS5 User's Manual by Charles L. Forgy, Department of 
Computer Science, Carnegie-Mellon University.  VAX OPS5 is the tool of 
choice for developing commercial quality rule-based systems.  With Version 
3.0, VAX OPS5 provides a DECwindows-based Development Environment that 
integrates the steps required to create, run, debug, and revise VAX OPS5 
programs.  

Production (rule-based) systems developed with VAX OPS5 can solve problems 
in configuration, selection, diagnosis, process monitoring and control, 
scheduling, planning, decision support, and rapid prototyping.   
Applications involving all these problems are found in such industries as 
petrochemical, insurance, banking, transportation, aerospace, education, 
and government.

A production system is a computer program consisting entirely of "if-then" 
statements called productions or rules. Production systems maintain two 
databases:  working memory and production memory.  Working memory contains 
a model of the current state of the problem;  production memory stores the 
rules that solve the problem. Productions are structured such that if a set 
of conditions about working memory is true, a  specified set of actions 
should be executed. The two parts of a production are called the Left Hand 
Side (LHS) for the conditional part and the Right Hand Side (RHS) for the 
action sequence.

The VAX OPS5 run-time system sequences through all the productions in a 
system in what is called the recognize-act cycle. The cycle consists of the 
following steps:

1.  Recognize -- Examine the current contents of working memory to locate 
    all elements that satisfy the LHSs of productions.

2.  Conflict Resolution -- Select one production with a satisfied LHS;  if 
    there is no satisfied LHS, then halt.

3.  Act -- Execute the RHS of the production.

4.  Return to Step 1.

A production system differs from a conventional programming language that 
has an "if-then" structure in that productions are not processed in 
sequential order. Only those productions with satisfied LHSs are evaluated, 
and only one of them is selected for execution. The result of executing the 
selected production is some modification to working memory rather than the 
assignment of values to variables. There is no need for loops or 
conditional branches as in conventional languages.

Production systems written in VAX OPS5 can call routines written in other 
VMS languages, and those routines can, in turn, call the VAX OPS5 system. 
The VAX OPS5 product directory contains files that define the support 
routines for the following VMS languages:  VAX Ada, VAX BASIC, VAX 
BLISS-32, VAX C, VAX FORTRAN, and VAX PASCAL.

VAX OPS5 Version 3.0 consists of three components:  the Development 
Environment, the Compiler, and the Run-Time System.

Development Environment

With the Development Environment, users can create or modify source code, 
then test, debug, and correct the altered program quickly with the new 
instructions in effect.

Features include:

oo   Standard DECwindows interface with user-customizable options

oo   Integrated text editor (choice of QuickEdit, VAXTPU-based EVE, or 
    user's choice)

oo   One or more trace windows

oo   One-to-one correspondence between modules and VMS files

oo   Single-user system with temporary and permanent source code databases

oo   Task-oriented and context-sensitive on-line help

oo   Uses any bitmapped graphics display that supports DECwindows (operates 
    correctly on color display but does not make special use of color)

oo   Executes stand-alone on a VAXstation or in DECwindows client/server 
    mode (VAX OPS5 running on a VMS compute server and graphics running on 
    a DECwindows display server)

Installation of the VAX OPS5 Development Environment component is optional. 
Users without access to bitmapped display devices or DECwindows can still 
develop applications by using individual DCL commands to edit, compile, 
link, and run VAX OPS5 programs.  This mode of development is appropriate 
for systems running VMS Workstation Software (VWS) or that have only  
character-cell terminals such as the VT200 and VT300 series.

Compiler

VAX OPS5 features a high-performance incremental compiler.  It creates a 
network that embodies a highly efficient representation of the 
interdependencies of productions, called the Rete Network. This network 
eliminates redundant tests that would otherwise be performed in an 
exhaustive pattern-matching (inference) operation. 

The compiler translates the  Rete Network into position-independent VAX 
instructions, and  the output is a standard object module that can be 
linked into VMS executable or shareable images.  This facilitates 
integration into the broader VAX environment (for example, working with 
applications developed in other languages).  The compiled Rete Network 
gives VAX OPS5 application performance that is typically much faster than 
interpreter- or LISP-based OPS5 implementations.  The performance and 
integration of VAX OPS5 offer significant advantages over other 
implementations of OPS5. 

Run-Time System

The run-time system is a suite of routines that form part of an 
application's running image.  All the routines reside in memory and can be 
shared among users -- a competitive feature of VAX OPS5.  Also included are 
a command interpreter that adds to user control of running VAX OPS5 
programs and other service routines. Features include:

oo   Run-time system support routines for interfacing to routines written in 
    other VMS languages.

oo   BUILD command for incrementally compiling a startup, production, or 
    catcher into a running program.

oo   RESTART command for resetting execution context and reexecuting the 
    startup.

oo   No separate run-time license required for application delivery.

HARDWARE REQUIREMENTS

VAX, MicroVAX or VAXstation configuration as specified in the System 
Support Addendum (SSA 27.04.04-x).

The performance and memory usage of DECwindows applications are 
particularly sensitive to system configuration.  Less memory may be 
required on the client system (the system where the software is installed 
and executed) if the server (the component that displays the application) 
resides on another system.  More memory may be required on a system with 
several applications running or may be desirable to improve the performance 
of an application.

SOFTWARE REQUIREMENTS

For VAX systems using terminals: (No DECwindows interface)

oo   VMS Operating System

For VAXstations running VWS:

oo   VMS Operating System

oo   VMS Workstation Software

For VAXstation systems running DECwindows:

oo   VMS Operating System (and necessary components of VMS DECwindows)

Refer to the System Support Addendum for availability and required versions 
of prerequisite/optional software and for information regarding components 
of VMS DECwindows.

ORDERING INFORMATION

Software Licenses: QL-913A*-**
Software Media: QA-913AA-**
Software Documentation: QA-913AA-GZ
Software Product Services: QT-913A*-**

*   Denotes variant fields.  For additional information on available 
    licenses, services and media refer to the appropriate price book.

SOFTWARE LICENSING

Licensees of VAX OPS5 may reproduce and distribute delivery applications 
software developed with VAX OPS5, provided such programs are: (1) in 
accordance with the provisions of Licensee's standard software license;  
(2) with Licensee's copyright notice included on such programs;  or (3) if 
conditions (1) or (2) are not met, with DIGITAL's COPYRIGHT notice included 
on such programs. 

This software is furnished under the licensing provisions of DIGITAL's 
Standard Terms and Conditions.  For more information about DIGITAL's 
licensing and policies, contact your local DIGITAL office.

LICENSE MANAGEMENT FACILITY

This product supports the VMS License Management Facility.  License units 
for this product are allocated on a CPU-capacity basis.  

For more information on the License Management Facility, refer to the VMS 
Operation System Software Product Description (SPD 25.01.xx) or the License 
Management Facility Manual of the VMS Operating System documentation set.

For more information about DIGITAL's licensing terms and policies, contact 
your local DIGITAL office.

SOFTWARE PRODUCT SERVICES

A variety of services are available from DIGITAL.  For more information 
contact your local DIGITAL office.

SOFTWARE WARRANTY

Warranty for this software product is provided by DIGITAL with the purchase 
of a license for the product as defined in the Software Warranty Addendum 
of this SPD.

