Newer
Older
RDLProofSystem / src / main / java / models / formulas / EquationFormula.java
@Sakoda2269 Sakoda2269 5 days ago 1 KB map compositionの推論を作成
package models.formulas;

import lombok.Getter;
import models.terms.EvaluatableTerm;

@Getter
public class EquationFormula extends Formula {

	private EvaluatableTerm leftHandSide;
	private EvaluatableTerm rightHandSide;
		
	public EquationFormula(EvaluatableTerm leftTerm, EvaluatableTerm rightTerm) {
		this.leftHandSide = leftTerm;
		this.rightHandSide = rightTerm;
	}

	public EquationFormula linearRightNormalized() {
		return new EquationFormula(leftHandSide.linearRightNormalize(), rightHandSide.linearRightNormalize());
	}
	
	
	@Override
	public String toString() {
		return leftHandSide.toString() + " = " + rightHandSide.toString();
	}

	@Override
	public boolean equals(Object another) {
		if (! (another instanceof EquationFormula)) {
			return false;
		}
		EquationFormula anotherFormula = (EquationFormula) another;
		return leftHandSide.equals(anotherFormula.getLeftHandSide()) && rightHandSide.equals(anotherFormula.getRightHandSide());
	}

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