Step * 2 of Lemma split_tail_lemma


1. Type
2. A ⟶ 𝔹
3. List
4. A
5. (a ∈ L)
6. ↑f[a]
7. ∀b:A. (a before b ∈  (↑f[b]))
8. ((fst(split_tail(L | ∀x.f[x]))) (snd(split_tail(L | ∀x.f[x])))) ∈ (A List)
9. (a ∈ snd(split_tail(L | ∀x.f[x])))
10. A
11. (b ∈ snd(split_tail(L | ∀x.f[x])))
⊢ ↑f[b]
BY
(InstLemma `split_tail_correct` [A;f;L] THEN Auto) }

1
1. Type
2. A ⟶ 𝔹
3. List
4. A
5. (a ∈ L)
6. ↑f[a]
7. ∀b:A. (a before b ∈  (↑f[b]))
8. ((fst(split_tail(L | ∀x.f[x]))) (snd(split_tail(L | ∀x.f[x])))) ∈ (A List)
9. (a ∈ snd(split_tail(L | ∀x.f[x])))
10. A
11. (b ∈ snd(split_tail(L | ∀x.f[x])))
12. (∀b∈snd(split_tail(L | ∀x.f[x])).↑f[b])
⊢ ↑f[b]


Latex:


Latex:

1.  A  :  Type
2.  f  :  A  {}\mrightarrow{}  \mBbbB{}
3.  L  :  A  List
4.  a  :  A
5.  (a  \mmember{}  L)
6.  \muparrow{}f[a]
7.  \mforall{}b:A.  (a  before  b  \mmember{}  L  {}\mRightarrow{}  (\muparrow{}f[b]))
8.  L  =  ((fst(split\_tail(L  |  \mforall{}x.f[x])))  @  (snd(split\_tail(L  |  \mforall{}x.f[x]))))
9.  (a  \mmember{}  snd(split\_tail(L  |  \mforall{}x.f[x])))
10.  b  :  A
11.  (b  \mmember{}  snd(split\_tail(L  |  \mforall{}x.f[x])))
\mvdash{}  \muparrow{}f[b]


By


Latex:
(InstLemma  `split\_tail\_correct`  [A;f;L]  THEN  Auto)




Home Index