public List<Term> getTerms() { return terms.AsReadOnly().ToList<Term>(); }
public Object visitPredicate(Predicate predicate, Object arg) { foreach (Term t in predicate.getTerms()) { t.accept(this, arg); } return predicate; }