equal
deleted
inserted
replaced
55 |
55 |
56 val coind_lemma1 = prove_goal Coind.thy "iterator[n][smap[dsucc]][nats] =\ |
56 val coind_lemma1 = prove_goal Coind.thy "iterator[n][smap[dsucc]][nats] =\ |
57 \ scons[n][iterator[dsucc[n]][smap[dsucc]][nats]]" |
57 \ scons[n][iterator[dsucc[n]][smap[dsucc]][nats]]" |
58 (fn prems => |
58 (fn prems => |
59 [ |
59 [ |
60 (res_inst_tac [("s","n")] dnat_ind2 1), |
60 (res_inst_tac [("s","n")] dnat_ind 1), |
61 (simp_tac (HOLCF_ss addsimps (coind_rews @ stream_rews)) 1), |
61 (simp_tac (HOLCF_ss addsimps (coind_rews @ stream_rews)) 1), |
62 (simp_tac (HOLCF_ss addsimps (coind_rews @ stream_rews)) 1), |
62 (simp_tac (HOLCF_ss addsimps (coind_rews @ stream_rews)) 1), |
63 (rtac trans 1), |
63 (rtac trans 1), |
64 (rtac nats_def2 1), |
64 (rtac nats_def2 1), |
65 (simp_tac (HOLCF_ss addsimps (coind_rews @ dnat_rews)) 1), |
65 (simp_tac (HOLCF_ss addsimps (coind_rews @ dnat_rews)) 1), |