Step
*
1
1
of Lemma
stream-lex-monotonic
.....antecedent.....
1. T : Type
2. ∀x,y:T. Dec(x = y ∈ T)
3. R : T ⟶ T ⟶ ℙ
4. Trans(T;x,y.x R y)
5. AntiSym(T;x,y.x R y)
6. f : T ⟶ T ⟶ T
7. ∀x,y,u,v:T. ((x R y)
⇒ (u R v)
⇒ ((f x u) R (f y v)))
8. ∀x,y,u,v:T. ((x R y)
⇒ (u R v)
⇒ (¬((x = y ∈ T) ∧ (u = v ∈ T)))
⇒ (¬((f x u) = (f y v) ∈ T)))
9. a : stream(T)
10. b : stream(T)
11. c : stream(T)
12. d : stream(T)
13. a stream-lex(T;R) b
14. c stream-lex(T;R) d
15. ∀R':stream(T) ⟶ stream(T) ⟶ ℙ
(R' => λs1,s2. ((s-hd(s1) R s-hd(s2)) ∧ ((s-hd(s1) = s-hd(s2) ∈ T)
⇒ (s-tl(s1) R' s-tl(s2))))
⇒ R' => stream-lex\000C(T;R))
⊢ λs1,s2. ∃a,b,c,d:stream(T)
((s1 = stream-zip(f;a;c) ∈ stream(T))
∧ (s2 = stream-zip(f;b;d) ∈ stream(T))
∧ (a stream-lex(T;R) b)
∧ (c stream-lex(T;R) d)) => λs1,s2. ((s-hd(s1) R s-hd(s2))
∧ ((s-hd(s1) = s-hd(s2) ∈ T)
⇒ (s-tl(s1)
(λs1,s2. ∃a,b,c,d:stream(T)
((s1 = stream-zip(f;a;c) ∈ stream(T))
∧ (s2 = stream-zip(f;b;d) ∈ stream(T))
∧ (a stream-lex(T;R) b)
∧ (c stream-lex(T;R) d)))
s-tl(s2))))
BY
{ RepeatFor 7 (Thin (-1)) }
1
1. T : Type
2. ∀x,y:T. Dec(x = y ∈ T)
3. R : T ⟶ T ⟶ ℙ
4. Trans(T;x,y.x R y)
5. AntiSym(T;x,y.x R y)
6. f : T ⟶ T ⟶ T
7. ∀x,y,u,v:T. ((x R y)
⇒ (u R v)
⇒ ((f x u) R (f y v)))
8. ∀x,y,u,v:T. ((x R y)
⇒ (u R v)
⇒ (¬((x = y ∈ T) ∧ (u = v ∈ T)))
⇒ (¬((f x u) = (f y v) ∈ T)))
⊢ λs1,s2. ∃a,b,c,d:stream(T)
((s1 = stream-zip(f;a;c) ∈ stream(T))
∧ (s2 = stream-zip(f;b;d) ∈ stream(T))
∧ (a stream-lex(T;R) b)
∧ (c stream-lex(T;R) d)) => λs1,s2. ((s-hd(s1) R s-hd(s2))
∧ ((s-hd(s1) = s-hd(s2) ∈ T)
⇒ (s-tl(s1)
(λs1,s2. ∃a,b,c,d:stream(T)
((s1 = stream-zip(f;a;c) ∈ stream(T))
∧ (s2 = stream-zip(f;b;d) ∈ stream(T))
∧ (a stream-lex(T;R) b)
∧ (c stream-lex(T;R) d)))
s-tl(s2))))
Latex:
Latex:
.....antecedent.....
1. T : Type
2. \mforall{}x,y:T. Dec(x = y)
3. R : T {}\mrightarrow{} T {}\mrightarrow{} \mBbbP{}
4. Trans(T;x,y.x R y)
5. AntiSym(T;x,y.x R y)
6. f : T {}\mrightarrow{} T {}\mrightarrow{} T
7. \mforall{}x,y,u,v:T. ((x R y) {}\mRightarrow{} (u R v) {}\mRightarrow{} ((f x u) R (f y v)))
8. \mforall{}x,y,u,v:T. ((x R y) {}\mRightarrow{} (u R v) {}\mRightarrow{} (\mneg{}((x = y) \mwedge{} (u = v))) {}\mRightarrow{} (\mneg{}((f x u) = (f y v))))
9. a : stream(T)
10. b : stream(T)
11. c : stream(T)
12. d : stream(T)
13. a stream-lex(T;R) b
14. c stream-lex(T;R) d
15. \mforall{}R':stream(T) {}\mrightarrow{} stream(T) {}\mrightarrow{} \mBbbP{}
(R' => \mlambda{}s1,s2. ((s-hd(s1) R s-hd(s2)) \mwedge{} ((s-hd(s1) = s-hd(s2)) {}\mRightarrow{} (s-tl(s1) R' s-tl(s2))))
{}\mRightarrow{} R' => stream-lex(T;R))
\mvdash{} \mlambda{}s1,s2. \mexists{}a,b,c,d:stream(T)
((s1 = stream-zip(f;a;c))
\mwedge{} (s2 = stream-zip(f;b;d))
\mwedge{} (a stream-lex(T;R) b)
\mwedge{} (c stream-lex(T;R) d)) => \mlambda{}s1,s2. ((s-hd(s1) R s-hd(s2))
\mwedge{} ((s-hd(s1) = s-hd(s2))
{}\mRightarrow{} (s-tl(s1)
(\mlambda{}s1,s2. \mexists{}a,b,c,d:stream(T)
((s1 = stream-zip(f;a;c))
\mwedge{} (s2 = stream-zip(f;b;d))
\mwedge{} (a stream-lex(T;R) b)
\mwedge{} (c stream-lex(T;R) d)))
s-tl(s2))))
By
Latex:
RepeatFor 7 (Thin (-1))
Home
Index