Newer
Older
ResourceDependencyLogic / src / models / terms / PrimedTerm.java
@Sakoda2269 Sakoda2269 13 days ago 962 bytes 書き換えの推論を少し実装
package models.terms;

import lombok.Getter;

@Getter
public class PrimedTerm extends EvaluatableTerm {

	private EvaluatableTerm primedTerm;
	
	protected PrimedTerm(EvaluatableTerm term) {
		super(term.getSymbol(), term.getOrder(), term.getSize());
		this.primedTerm = term;
	}

	@Override
	public String toString() {
		return primedTerm.toString() + "'";
	}

	@Override
	public String toStringWithOrder() {
		return toString() + "(" + primedTerm.getOrder() + ")";
	}

	@Override
	public int hashCode() {
		return toStringWithOrder().hashCode();
	}

	@Override
	public Object clone() {
		return new PrimedTerm(primedTerm);
	}

	@Override
	public boolean isLinearRightNormalized() {
		return primedTerm.isLinearRightNormalized();
	}

	@Override
	public EvaluatableTerm linearRightNormalize() {
		return new PrimedTerm(primedTerm.linearRightNormalize());
	}

	@Override
	public void selfLinearRightNormalize() {
		primedTerm.selfLinearRightNormalize();
	}

	
	
}