
theorem Th34:
  for m being Nat, L being Field, p,q being Polynomial of L, x
  being Element of L holds DFT(p, x, m) * DFT(q, x, m) = DFT(p *' q, x, m)
proof
  let m be Nat;
  let L be Field;
  let p,q be Polynomial of L;
  let x be Element of L;
  set ep = DFT(p, x, m), eq = DFT(q, x, m), epq = DFT(p *' q, x, m);
A1: now
    let u9 be object;
    assume u9 in dom(ep*eq);
    then reconsider u = u9 as Element of NAT by FUNCT_2:def 1;
    per cases;
    suppose
A2:   u < m;
      hence epq.u9 = eval(p*'q,x|^u) by Def6
        .= eval(p,x|^u) * eval(q,x|^u) by POLYNOM4:24
        .= ep.u * eval(q,x|^u) by A2,Def6
        .= ep.u * eq.u by A2,Def6
        .= (ep * eq).u9 by LOPBAN_3:def 7;
    end;
    suppose
A3:   m <= u;
      thus (ep * eq).u9 = ep.u * eq.u by LOPBAN_3:def 7
        .= 0.L * eq.u by A3,Def6
        .= 0.L
        .= epq.u9 by A3,Def6;
    end;
  end;
  dom(ep*eq) = NAT by FUNCT_2:def 1
    .= dom epq by FUNCT_2:def 1;
  hence thesis by A1,FUNCT_1:2;
end;
