Step
*
1
1
1
1
2
1
of Lemma
stream-coinduction
.....wf..... 
1. A : Type
2. R : stream(A) ⟶ stream(A) ⟶ ℙ
3. ∀x,y:stream(A).  ((x R y) 
⇒ ((s-hd(x) = s-hd(y) ∈ A) ∧ (s-tl(x) R s-tl(y))))
4. x : stream(A)
5. y : stream(A)
6. x R y
7. T : Type
8. (A × T) ⊆r T
9. stream(A) ⊆r T
10. ∀x,y:stream(A).  (R[x;y] 
⇒ (x = y ∈ T))
11. x1 : stream(A)
12. y1 : stream(A)
13. R[x1;y1]
14. z : A × T
15. x1 = z ∈ (A × T)
⊢ y1 ∈ A × T
BY
{ (InstLemma `stream-ext` [⌜A⌝]⋅ THEN Auto THEN DoSubsume THEN Auto)⋅ }
Latex:
Latex:
.....wf..... 
1.  A  :  Type
2.  R  :  stream(A)  {}\mrightarrow{}  stream(A)  {}\mrightarrow{}  \mBbbP{}
3.  \mforall{}x,y:stream(A).    ((x  R  y)  {}\mRightarrow{}  ((s-hd(x)  =  s-hd(y))  \mwedge{}  (s-tl(x)  R  s-tl(y))))
4.  x  :  stream(A)
5.  y  :  stream(A)
6.  x  R  y
7.  T  :  Type
8.  (A  \mtimes{}  T)  \msubseteq{}r  T
9.  stream(A)  \msubseteq{}r  T
10.  \mforall{}x,y:stream(A).    (R[x;y]  {}\mRightarrow{}  (x  =  y))
11.  x1  :  stream(A)
12.  y1  :  stream(A)
13.  R[x1;y1]
14.  z  :  A  \mtimes{}  T
15.  x1  =  z
\mvdash{}  y1  \mmember{}  A  \mtimes{}  T
By
Latex:
(InstLemma  `stream-ext`  [\mkleeneopen{}A\mkleeneclose{}]\mcdot{}  THEN  Auto  THEN  DoSubsume  THEN  Auto)\mcdot{}
Home
Index