equal
deleted
inserted
replaced
337 (monofun_Istrictify2 RS monocontlub2cont)); |
337 (monofun_Istrictify2 RS monocontlub2cont)); |
338 |
338 |
339 |
339 |
340 qed_goalw "strictify1" thy [strictify_def] "strictify`f`UU=UU" (fn _ => [ |
340 qed_goalw "strictify1" thy [strictify_def] "strictify`f`UU=UU" (fn _ => [ |
341 (stac beta_cfun 1), |
341 (stac beta_cfun 1), |
342 (simp_tac (!simpset addsimps [cont_Istrictify2,cont_Istrictify1, |
342 (simp_tac (simpset() addsimps [cont_Istrictify2,cont_Istrictify1, |
343 cont2cont_CF1L]) 1), |
343 cont2cont_CF1L]) 1), |
344 (stac beta_cfun 1), |
344 (stac beta_cfun 1), |
345 (rtac cont_Istrictify2 1), |
345 (rtac cont_Istrictify2 1), |
346 (rtac Istrictify1 1) |
346 (rtac Istrictify1 1) |
347 ]); |
347 ]); |
348 |
348 |
349 qed_goalw "strictify2" thy [strictify_def] |
349 qed_goalw "strictify2" thy [strictify_def] |
350 "~x=UU ==> strictify`f`x=f`x" (fn prems => [ |
350 "~x=UU ==> strictify`f`x=f`x" (fn prems => [ |
351 (stac beta_cfun 1), |
351 (stac beta_cfun 1), |
352 (simp_tac (!simpset addsimps [cont_Istrictify2,cont_Istrictify1, |
352 (simp_tac (simpset() addsimps [cont_Istrictify2,cont_Istrictify1, |
353 cont2cont_CF1L]) 1), |
353 cont2cont_CF1L]) 1), |
354 (stac beta_cfun 1), |
354 (stac beta_cfun 1), |
355 (rtac cont_Istrictify2 1), |
355 (rtac cont_Istrictify2 1), |
356 (rtac Istrictify2 1), |
356 (rtac Istrictify2 1), |
357 (resolve_tac prems 1) |
357 (resolve_tac prems 1) |
368 (* ------------------------------------------------------------------------ *) |
368 (* ------------------------------------------------------------------------ *) |
369 (* use cont_tac as autotac. *) |
369 (* use cont_tac as autotac. *) |
370 (* ------------------------------------------------------------------------ *) |
370 (* ------------------------------------------------------------------------ *) |
371 |
371 |
372 (* HINT: cont_tac is now installed in simplifier in Lift.ML ! *) |
372 (* HINT: cont_tac is now installed in simplifier in Lift.ML ! *) |
373 (*simpset := !simpset addsolver (K (DEPTH_SOLVE_1 o cont_tac));*) |
373 (*simpset_ref() := simpset() addsolver (K (DEPTH_SOLVE_1 o cont_tac));*) |
374 |
374 |
375 (* ------------------------------------------------------------------------ *) |
375 (* ------------------------------------------------------------------------ *) |
376 (* some lemmata for functions with flat/chain_finite domain/range types *) |
376 (* some lemmata for functions with flat/chain_finite domain/range types *) |
377 (* ------------------------------------------------------------------------ *) |
377 (* ------------------------------------------------------------------------ *) |
378 |
378 |