Step * 3 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. ∀b:A. ((b ∈ snd(split_tail(L | ∀x.f[x])))  (↑f[b]))
11. ¬↑null(fst(split_tail(L | ∀x.f[x])))
⊢ ¬↑f[last(fst(split_tail(L | ∀x.f[x])))]
BY
(((MoveToConcl (-1) THEN AllHyps Thin) THEN ListInd 3)
   THEN RecUnfold `split_tail` 0
   THEN Reduce 0
   THEN SimpConcl
   THEN MoveToConcl (-1)
   THEN (GenConcl split_tail(v | ∀x.f[x]) p ∈ (A List × (A List)) THENA Auto)
   THEN Thin (-1)
   THEN (-1)
   THEN Reduce 0
   THEN AutoSplit) }

1
1. Type
2. A ⟶ 𝔹
3. A
4. List
5. p1 List
6. p2 List
7. ↑f[u]
⊢ ((¬↑null(p1))  (¬↑f[last(p1)]))
 (¬↑null(fst(case p1 of [] => <[], [u p2]> x::y => <[u p1], p2> esac)))
 (¬↑f[last(fst(case p1 of [] => <[], [u p2]> x::y => <[u p1], p2> esac))])

2
1. Type
2. A ⟶ 𝔹
3. A
4. ¬↑f[u]
5. List
6. p1 List
7. p2 List
⊢ ((¬↑null(p1))  (¬↑f[last(p1)]))
 (¬↑null(fst(case p1 of [] => <[u], p2> x::y => <[u p1], p2> esac)))
 (¬↑f[last(fst(case p1 of [] => <[u], p2> x::y => <[u p1], p2> esac))])


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.  \mforall{}b:A.  ((b  \mmember{}  snd(split\_tail(L  |  \mforall{}x.f[x])))  {}\mRightarrow{}  (\muparrow{}f[b]))
11.  \mneg{}\muparrow{}null(fst(split\_tail(L  |  \mforall{}x.f[x])))
\mvdash{}  \mneg{}\muparrow{}f[last(fst(split\_tail(L  |  \mforall{}x.f[x])))]


By


Latex:
(((MoveToConcl  (-1)  THEN  AllHyps  Thin)  THEN  ListInd  3)
  THEN  RecUnfold  `split\_tail`  0
  THEN  Reduce  0
  THEN  SimpConcl
  THEN  MoveToConcl  (-1)
  THEN  (GenConcl  split\_tail(v  |  \mforall{}x.f[x])  =  p  THENA  Auto)
  THEN  Thin  (-1)
  THEN  D  (-1)
  THEN  Reduce  0
  THEN  AutoSplit)




Home Index