@@ -258,7 +258,9 @@ Section PrintMults.
258258 setoid_rewrite bind_ret_l in H.
259259 unf_res.
260260 punfold H. red in H. cbn in *.
261- dependent induction H.
261+ remember (interp_state handleIOStateE) as h eqn:Eh.
262+ revert Eh.
263+ dependent induction H; intros Eh.
262264 2:{ rewrite <- x. constructor; auto. eapply IHruttF; eauto; reflexivity. }
263265 inversion H; ddestruction; subst; ddestruction; try contradiction.
264266 subst. specialize (H0 tt tt).
@@ -274,8 +276,6 @@ Section PrintMults.
274276 eapply CIH with (Maps.add Y (n + m) si); try apply lookup_eq.
275277 2: { rewrite lookup_neq; subst; auto. }
276278 rewrite tau_eutt in Hk1.
277- (* TODO: not sure why this is failing *)
278- (*
279279 setoid_rewrite bind_trigger in Hk1.
280280 setoid_rewrite interp_state_vis in Hk1. cbn in *.
281281 rewrite bind_ret_l in Hk1. rewrite tau_eutt in Hk1.
@@ -286,13 +286,11 @@ Section PrintMults.
286286 rewrite interp_state_ret in Hk1. rewrite bind_ret_l in Hk1.
287287 cbn in *.
288288 rewrite tau_eutt in Hk1.
289- unfold Basics.iter, MonadIter_stateT0, Basics.iter, MonadIter_itree.
289+ unfold Basics.iter, MonadIter_itree.
290290 match goal with
291291 H : _ ⊑ ITree.iter _ (?s1, _) |- _ ⊑ ITree.iter _ (?s2, _) =>
292292 enough (Hseq : s2 = s1) end; try rewrite Hseq; auto.
293293 subst. rewrite Nat.add_comm. auto.
294- *)
295- admit.
296- Admitted .
294+ Qed .
297295
298296End PrintMults.
0 commit comments