
theorem
  for a,b,c be Integer holds (a*b) mod (a*c) = a*(b mod c)
  proof
    let a,b,c be Integer;
    per cases;
    suppose a = 0;
      hence thesis;
    end;
    suppose a <> 0; then
      reconsider a as non zero Integer;
      per cases;
      suppose c = 0; then
        (a*b) mod (a*c) = 0 & b mod c = 0;
        hence thesis;
      end;
      suppose c <> 0; then
        reconsider c as non zero Integer;
        (a*b) mod (a*c) = a*b - ((a*b) div (a*c))*(a*c) by INT_1:def 10
        .= a*b - [\a*b/(a*c)/]*(a*c) by INT_1:def 9
        .= a*(b - [\a*b/(a*c)/]*c)
        .= a*(b - [\(b/c)/]*c) by XCMPLX_1:91
        .= a*(b - (b div c)*c) by INT_1:def 9;
        hence thesis by INT_1:def 10;
      end;
    end;
  end;
