eclipse-viatra / org.eclipse.viatra

Main components of the VIATRA framework
https://eclipse.dev/viatra
Eclipse Public License 2.0
0 stars 1 forks source link

Improvements related to RelationEvaluation #140

Open eclipse-viatra-bot opened 3 months ago

eclipse-viatra-bot commented 3 months ago

| --- | --- | | Bugzilla Link | 580778 | | Status | UNCONFIRMED | | Importance | P3 enhancement | | Reported | Sep 21, 2022 15:15 EDT | | Modified | Sep 22, 2022 05:48 EDT | | Version | 2.8.0 | | Reporter | Tamas Szabo |

Description

In https://bugs.eclipse.org/bugs/show_bug.cgi?id=580745, we have added support for RelationEvaluation. Gabor Bergmann suggested a few ideas for future improvements in https://git.eclipse.org/r/c/viatra/org.eclipse.viatra/+/195861/. This ticket was created, so that we do not forget about those ideas.

  1. IRelationEvaluator should have an incremental API, and it should have a default implementation that takes a non-incremental evaluator core and wraps it to produce an incremental facade, basically using the wrapper logic that is currently in RelationEvaluatorNode.

  2. Ideally, IRelationEvaluator should be able to optionally express guarantees about its output relation:

    • functional dependencies
    • type restrictions on the columns\ These would be added to this interface, and then in turn they would be reflected by the RelationEvaluation PConstraint (see also ITypeInfoProviderConstraint).