User Tools

Site Tools


ptidej_solver

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
ptidej_solver [2014/03/31 14:49] – [Problem Motifs Definitions] yannptidej_solver [2025/01/15 21:40] (current) – external edit 127.0.0.1
Line 24: Line 24:
  pb.addVar(superEntity);  pb.addVar(superEntity);
  
- final InheritancePathConstraint c1 = + final StrictInheritanceConstraint c1 = 
- new InheritancePathConstraint+ new StrictInheritanceConstraint
- "SuperEntity -|>- ... -|>- SubEntity", + "SuperEntity -|>- SubEntity", 
- "throw new RuntimeException(\"SuperEntity -|>- ... -|>- SubEntity\");",+ "throw new RuntimeException(\"SuperEntity -|>- SubEntity\");",
  subEntity,  subEntity,
  superEntity,  superEntity,
Line 61: Line 61:
     * ''int weight'': the weight of the constraint in the problem. The sum of the weights of all the constraints in a problem should equal 100;     * ''int weight'': the weight of the constraint in the problem. The sum of the weights of all the constraints in a problem should equal 100;
     * ''IApproximations approximations'': an instance of ''ptidej.solver.approximation.IApproximations'', which returns and ordered array of constraint names, to try one after the other if the previous one cannot be verified;     * ''IApproximations approximations'': an instance of ''ptidej.solver.approximation.IApproximations'', which returns and ordered array of constraint names, to try one after the other if the previous one cannot be verified;
 +
 +{{ :binaryconstraint.png?direct |}}
 +
   * ''ptidej.solver.constraint.BinaryCounterConstraint'': for any binary constraint that count some properties between the two variables, for example a "distance" in terms of number of relationships that must be followed to reach ''v1'' from ''v0'';   * ''ptidej.solver.constraint.BinaryCounterConstraint'': for any binary constraint that count some properties between the two variables, for example a "distance" in terms of number of relationships that must be followed to reach ''v1'' from ''v0'';
 +
 +{{ :binarycounterconstraint.png?nolink |}}
 +
   * ''ptidej.solver.constraint.UnaryConstraint'': for any unary constraint, i.e., constraint on a single variable to verify a property of an entity, for example if an entity is an interface vs. a class.   * ''ptidej.solver.constraint.UnaryConstraint'': for any unary constraint, i.e., constraint on a single variable to verify a property of an entity, for example if an entity is an interface vs. a class.
 +
 +{{ :unaryconstraint.png?nolink |}}
  
 ''BinaryConstraint'' has two sub-classes to specialise for inheritance and binary-class relationships. ''BinaryConstraint'' has two sub-classes to specialise for inheritance and binary-class relationships.
ptidej_solver.1396277384.txt.gz · Last modified: (external edit)