OPS5


Also found in: Wikipedia.

OPS5

(language)
A programming language for rule-based production systems. A rule consists of pre-condition(s) and a resulting action.

The system checks its working memory to see if there are rules whose pre-conditions are satisfied, if so, the action in one selected satisfied rule is executed.

There is a public domain implementation of an OPS5 interpreter written by Charles L. Forgy <forgy@cs.cmu.edu> in 1977. It was first implemented in Lisp and later in BLISS. It was also ported to Common Lisp by George Wood and Jim Kowalski.

CLIPS is a language for writing expert systems, with some of the capabilities of OPS5.

See also C5, OPS83, OPS4, OPS5+, OPS83.

Inference Engine Tech, Cambridge MA.

An OPS5 interpreter in Common LISP.

A version by Mark Kantrowitz. <mkant+@cs.cmu.edu>.

["Programming Expert Systems in OPS5", L. Brownston et al, A-W 1985].

["An OPS5 Primer", Sherman et al, comes with OPS5 for DOS].

["Rule-Based Programming in the Unix System", G.T. Vesonder, AT&T Tech J 67(1), 1988].
References in periodicals archive ?
mandate that builds on the findings of the donor performance report of OPS5 (3) the performance of the current governance structure and
XCON: El programa R1 (luego llamado XCON, por Configurador Experto) era un sistema de produccion basado en reglas escrito en OPS5 por John P.
Jess's forward-chaining reasoning system was modeled after production systems such as OPS5 (Brownston et al.
Like OPS5, they all provide the benefits of a is many times as fast and much smaller than the Lisp version but is quite expensive and available only for DEC
This is identical to the interpretation of conditions in the CA rules of, for example, Ariel [Hanson 1992], RPL [Delcambre and Etheredge 1989], and set-oriented adaptations of OPS5 [Gordin and Pasik 1991].
These types of systems are usually implemented in a logic programming language or a production system that directly supports logical inference, such as Prolog or OPS5.
The user module is written in PASCAL, a control module in REXX, a command language, and the evaluation module in LISP and OPS5.
Most of the system is written in Jess, a Java-embedded descendant of OPS5 and Clips, Properly understood and used, rule-based programming and AI-style "second-order programming" based on constructs like eval, apply, and the Jess build are invaluable for writing and integrating complex algorithms in a concise and timely manner.
For example, the fact that R1 (23) performs a linear sequence of subtasks is not explicitly encoded; the system designer "encrypted," so to speak, this control in the pattern-matching of OPS5, the production-rule system in which RI is implemented.
These additional actions may activate other rules, and a forward chaining control flow results, as was popularized in OPS5 [10].
These facilities all differ from the Starburst approach in that their rule language and semantics is based substantially on OPS5 [14]; hence, their rules respond to operations on a single row.
We have designed and implemented an architecture, Concurrent Real-Time OPS5 (CROPS5) [20], illustrating these principles.