Newer
Older
ResourceDependencyLogic / src / Main.java
import models.EvaluatableTerm;
import models.ResourceVariable;
import models.algebra.Type;
import models.dataConstraintModel.DataConstraintModel;

public class Main {

	public static void main(String[] args) {

		Type INT = DataConstraintModel.typeInt;
		Type STR = DataConstraintModel.typeString;
		
		ResourceVariable a = EvaluatableTerm.of("A", INT, 2);
		ResourceVariable b = EvaluatableTerm.of("B", INT, 2);
		ResourceVariable c = EvaluatableTerm.of("C", INT, 2);
		ResourceVariable d = EvaluatableTerm.of("D", INT, 2);
		ResourceVariable e = EvaluatableTerm.of("E", INT, 1);
		ResourceVariable f = EvaluatableTerm.of("F", INT, 1);
		ResourceVariable g = EvaluatableTerm.of("G", INT, 1);
		ResourceVariable h = EvaluatableTerm.of("H", INT, 1);
		ResourceVariable i = EvaluatableTerm.of("I", INT, 0);
		
		EvaluatableTerm te1 = EvaluatableTerm.of(g, h, i);
		EvaluatableTerm te2 = EvaluatableTerm.of(a, b, c);
		EvaluatableTerm te3 = EvaluatableTerm.of(te2, d, e);
		EvaluatableTerm te4 = EvaluatableTerm.of(te3, f, te1);
		
		var te5 = te4.linearRightNormalize();
		System.out.println(te4.toStr());
		System.out.println(te4.getOrder());
		te4.selfLinearRightNormalize();
		System.out.println(te4.toStr());
		System.out.println(te4.isLinearRightNormal());
		System.out.println(te4.getOrder());
		System.out.println(te5.toStr());
		
	}

}