LightSymbolicSimplifier.java

package edu.udel.cis.vsl.tass.simplify.light;

import edu.udel.cis.vsl.tass.number.IF.IntervalIF;
import edu.udel.cis.vsl.tass.simplify.IF.SymbolicSimplifierIF;
import edu.udel.cis.vsl.tass.symbolic.IF.SimplifierIF;
import edu.udel.cis.vsl.tass.symbolic.IF.SymbolicConstantIF;
import edu.udel.cis.vsl.tass.symbolic.IF.SymbolicExpressionIF;
import edu.udel.cis.vsl.tass.symbolic.IF.SymbolicUniverseIF;

public class LightSymbolicSimplifier implements SymbolicSimplifierIF {

	private SymbolicUniverseIF universe;

	private SimplifierIF simplifier;

	LightSymbolicSimplifier(SymbolicUniverseIF universe,
			SymbolicExpressionIF assumption) {
		this.universe = universe;
		this.simplifier = universe.simplifier(assumption);
	}

	public SymbolicExpressionIF newAssumption() {
		return simplifier.newAssumption();
	}

	public SymbolicExpressionIF simplify(SymbolicExpressionIF expression) {
		return simplifier.simplify(expression);
	}

	public SymbolicUniverseIF universe() {
		return universe;
	}

	@Override
	public IntervalIF assumptionAsInterval(SymbolicConstantIF symbolicConstant) {
		return simplifier.assumptionAsInterval(symbolicConstant);
	}

}