In this paper we describe a purely declarative method for introducing modularity into forward-chaining, rule-based languages. The method is enforced by the syntax of the language and includes the ability to parameterize the rule groups. We also describe the Venus programming environment, which implements the presented ideas. Drawing from two of three Venus applications developed to date, we illustrate how this form of modularity contributes directly to the resolution of certain software engineering problems associated with rule languages. We also discuss key implementation details and present performance data.
In tlzis puper-' we present peifoi-tizance resitlt.r.for n production systenz environment, CLIPS+ +, that demonstrate the ndviinsrige of selectively builr1in.g ancl applying simple index striictures. We contrust this to tlze extensive body qf work on nzcrtching ,vl?iclz over the years Iias evolved incrensingly conzplex conzpositions of index structurs which N1-e tlierz un(fortii1y ripplied to rill the clutii types rind rules in n production systenz program. Over U set of benchnuirk progrmzs, tlze.fastest executions are nlwriys attriined by cnrefirlly selecting CI good nzixtlire of indexes ratlzer tl1un universid use of a single index.
This paper presents an algorithm for impkmenting rule filtering in active and trigger enabled databases. The algorithm generates one or more decision trees that determine what rules or triggers might be enabled by an individual database element, reducing the number of rules or triggers that must be evaluated. The algorithm operates by symbolically representing tbe space of database elements and subdividing the space based on mle predicates. Regions of the state space represent particular combinations of enabled rules. Decision trees are then generated based on the subdivided state space. The trees have the important property that no individual test is repeated. The ordered binary decision diagram (BDD) data structure is used to represent and manipulate the state space.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.