示例#1
0
    @Override
    public int hashCode() {

        int a   = multiplicand.hashCode();
        int b   = (int)scalar.getIndex();

        return 37 * (37 * ( (a ^ (a >>> 31))) + (b ^ (b >>> 31)));

    }
示例#2
0
 @Override
 public Set<HasValue> bind( Term value )
     throws PatternMatchException {
     return multiplicand.bind( value );
 }
示例#3
0
 @Override
 public Set<Symbol> free() {
     return multiplicand.free();
 }
示例#4
0
 @Override
 public Pattern substitute( Term x, Symbol y ) {
     return new TMultiplicative( scalar, multiplicand.substitute( x,y ) );
 }
示例#5
0
 @Override
 public Term reduce() throws EvaluationException {
     return new TMultiplicative( scalar, multiplicand.reduce() );
 }
示例#6
0
 @Override
 public String toString() {
     return scalar.toString() + "(" + multiplicand.toString() + ")";
 }