summaryrefslogtreecommitdiff
path: root/test-suite/bugs/closed/shouldsucceed/1643.v
diff options
context:
space:
mode:
Diffstat (limited to 'test-suite/bugs/closed/shouldsucceed/1643.v')
-rw-r--r--test-suite/bugs/closed/shouldsucceed/1643.v21
1 files changed, 21 insertions, 0 deletions
diff --git a/test-suite/bugs/closed/shouldsucceed/1643.v b/test-suite/bugs/closed/shouldsucceed/1643.v
new file mode 100644
index 00000000..4114987d
--- /dev/null
+++ b/test-suite/bugs/closed/shouldsucceed/1643.v
@@ -0,0 +1,21 @@
+(* Check some aspects of that the algorithm used to possibly reuse a
+ global name in the recursive calls (coinductive case) *)
+
+CoInductive Str : Set := Cons (h:nat) (t:Str).
+
+Definition decomp_func (s:Str) :=
+ match s with
+ | Cons h t => Cons h t
+ end.
+
+Theorem decomp s: s = decomp_func s.
+Proof.
+ intros s.
+ case s; simpl; reflexivity.
+Qed.
+
+Definition zeros := (cofix z : Str := Cons 0 z).
+Lemma zeros_rw : zeros = Cons 0 zeros.
+ rewrite (decomp zeros).
+ simpl.
+Admitted.