3.2.13.2. rule/CompositionExpr.hpp

3.2.13.2.1. RCExp

In this namespace the data structures and operators for representing rule composition expressions are defined. An expression, RCExp, can be evaluated through the method rule::Composer::eval. The result of an expression is a set of rules.

3.2.13.2.2. Class rule::RCExp::Union

class rule::RCExp::Union

Return the union of the subexpressions. I.e., flatten the subresult lists into a single list.

3.2.13.2.2.1. Synopsis

3.2.13.2.3. Class rule::RCExp::Bind

class rule::RCExp::Bind

Return the singleton list with the rule \((\emptyset, \emptyset, G)\) for the given graph \(G\).

3.2.13.2.3.1. Synopsis

3.2.13.2.4. Class rule::RCExp::Id

class rule::RCExp::Id

Return the singleton list with the rule \((G, G, G)\) for the given graph \(G\).

3.2.13.2.4.1. Synopsis

3.2.13.2.5. Class rule::RCExp::Unbind

class rule::RCExp::Unbind

Return the singleton list with the rule \((G, \emptyset, \emptyset)\) for the given graph \(G\).

3.2.13.2.5.1. Synopsis

3.2.13.2.6. Class rule::RCExp::Expression

class rule::RCExp::Expression

A generic rule composition expression.

3.2.13.2.6.1. Synopsis

3.2.13.2.7. Class rule::RCExp::ComposeBase

class rule::RCExp::ComposeBase

The base class for the composition of two rule \((L_1, K_1, R_1)\) and \((L_2, K_2, R_2)\).

3.2.13.2.7.1. Synopsis

3.2.13.2.8. Class rule::RCExp::ComposeCommon

class rule::RCExp::ComposeCommon

Compose the rules by all common subgraphs of \(R_1\) and \(L_2\), possibly limited to connected subgraphs or to the subgraphs of maximum size. By default the empty overlap is not considered, but can be enabled to be.

3.2.13.2.8.1. Synopsis

3.2.13.2.9. Class rule::RCExp::ComposeParallel

class rule::RCExp::ComposeParallel

Compose the rules by the empty graph, i.e., create a rule representing the parallel application of two input rules.

3.2.13.2.9.1. Synopsis

3.2.13.2.10. Class rule::RCExp::ComposeSub

class rule::RCExp::ComposeSub

Compose the rules such that overlapping connected components of \(R_1\) and \(L_2\) have the \(L_2\) component as a subgraph of \(R_1\). The overlap is partial if not every connected component of \(L_2\) is participating in the common subgraph.

3.2.13.2.10.1. Synopsis

3.2.13.2.11. Class rule::RCExp::ComposeSuper

class rule::RCExp::ComposeSuper

Compose the rules such that overlapping connected components of \(R_1\) and \(L_2\) have the \(R_1\) component as a subgraph of \(L_2\). The overlap is partial if not every connected component of \(R_1\) is participating in the common subgraph.

3.2.13.2.11.1. Synopsis