Closed alxest closed 4 years ago
Indeed that Tau
gets inserted by iter
. It could be avoided if we really wanted to but it's not a priority. One way would be to write a cofixpoint, but I've tried to minimize their usage. Another way would be to make iter
more sophisticated to insert fewer Tau
s, but that complicates proofs. So I decided to live with those Tau
s.
@Lysxia That makes a lot of sense. Thanks for the clarification!
I added a comment about this in the source for posterity https://github.com/DeepSpec/InteractionTrees/commit/f8db33cc7663c8266be43ff4664d188b26cf1873
(It is not a major hassle for me, but just out of curiosity.)
In the following Lemma,
I understand that we need to put additional
Tau
in the first event:Tau (interp_mrec ctx (ctx _ d >>= k))
. However, I wonder if theTau
in the second event is essential:Vis e (fun x => Tau (interp_mrec ctx (k x)))
. Maybe thisTau
was accidentally introduced when usingITree.iter
?