SimplifyOperator.java
package dev.civl.mc.state.common.immutable;
import dev.civl.sarl.IF.Reasoner;
import dev.civl.sarl.IF.UnaryOperator;
import dev.civl.sarl.IF.expr.SymbolicExpression;
/**
* Make the simplification, which is carried out by a {@link Reasoner}, a
* {@link UnaryOperator<SymbolicExpression>}.
*
* @author ziqing
*
*/
public class SimplifyOperator implements UnaryOperator<SymbolicExpression> {
private Reasoner simplifier;
SimplifyOperator(Reasoner reasoner) {
this.simplifier = reasoner;
}
@Override
public SymbolicExpression apply(SymbolicExpression x) {
return simplifier.simplify(x);
}
}