public Term negate() {
        Term[] t=new Term[sub.length];
        boolean w=true;
        for(int i=0;i<t.length;i++) {
            if(w&&sub[i].isNegative()) {
                w=false;
                t[i]=sub[i].negate();
            }
            else {
                t[i]=sub[i];
            }
        }
        if(w) {
            t[0]=t[0].negate();
        }
        return new Produkt(t);
    }