public boolean equals(Object obj) {if ( !(obj instanceof Predicate) ) return false;if ( this == obj ) return true;Predicate p = (Predicate)obj;return this.ruleIndex == p.ruleIndex &&this.predIndex == p.predIndex &&this.isCtxDependent == p.isCtxDependent;}

public override bool Equals(object obj){if (!(obj is SemanticContext.Predicate)){return false;}if (this == obj){return true;}SemanticContext.Predicate p = (SemanticContext.Predicate)obj;return this.ruleIndex == p.ruleIndex && this.predIndex == p.predIndex && this.isCtxDependent == p.isCtxDependent;}
