src/HOL/Divides.thy
changeset 35644 d20cf282342e
parent 35367 45a193f0ed0c
child 35673 178caf872f95
equal deleted inserted replaced
35643:965c24dd6856 35644:d20cf282342e
  2324   apply (auto simp add: pos_imp_zdiv_nonneg_iff)
  2324   apply (auto simp add: pos_imp_zdiv_nonneg_iff)
  2325   apply (cases "y = 0")
  2325   apply (cases "y = 0")
  2326   apply auto
  2326   apply auto
  2327 done
  2327 done
  2328 
  2328 
  2329 declare TransferMorphism_nat_int [transfer add return:
  2329 declare transfer_morphism_nat_int [transfer add return:
  2330   transfer_nat_int_functions
  2330   transfer_nat_int_functions
  2331   transfer_nat_int_function_closures
  2331   transfer_nat_int_function_closures
  2332 ]
  2332 ]
  2333 
  2333 
  2334 lemma transfer_int_nat_functions:
  2334 lemma transfer_int_nat_functions:
  2339 lemma transfer_int_nat_function_closures:
  2339 lemma transfer_int_nat_function_closures:
  2340     "is_nat x \<Longrightarrow> is_nat y \<Longrightarrow> is_nat (x div y)"
  2340     "is_nat x \<Longrightarrow> is_nat y \<Longrightarrow> is_nat (x div y)"
  2341     "is_nat x \<Longrightarrow> is_nat y \<Longrightarrow> is_nat (x mod y)"
  2341     "is_nat x \<Longrightarrow> is_nat y \<Longrightarrow> is_nat (x mod y)"
  2342   by (simp_all only: is_nat_def transfer_nat_int_function_closures)
  2342   by (simp_all only: is_nat_def transfer_nat_int_function_closures)
  2343 
  2343 
  2344 declare TransferMorphism_int_nat [transfer add return:
  2344 declare transfer_morphism_int_nat [transfer add return:
  2345   transfer_int_nat_functions
  2345   transfer_int_nat_functions
  2346   transfer_int_nat_function_closures
  2346   transfer_int_nat_function_closures
  2347 ]
  2347 ]
  2348 
  2348 
  2349 text{*Suggested by Matthias Daum*}
  2349 text{*Suggested by Matthias Daum*}