Step
*
3
2
1
of Lemma
global-eo_wf
1. Info : Type
2. L : (Id × Info) List@i
3. n : ℕ||L||@i
4. x : ℕ||L||@i
5. x < n@i
6. (fst(L[x])) = (fst(L[n])) ∈ Id@i
7. eval i = fst(L[n]) in
   eval z = last_index(firstn(n;L);p.fst(p) = i) in
     if (z =z 0) then n else z - 1 fi  < n
8. v : Id@i
9. (fst(L[n])) = v ∈ Id@i
10. v1 : ℕn + 1@i
11. v1 ≠ 0
12. last_index(firstn(n;L);x.fst(x) = v) = v1 ∈ ℕ||firstn(n;L)|| + 1@i
13. ¬(∃x∈firstn(n;L). ↑fst(x) = v) supposing v1 = 0 ∈ ℤ@i
14. v1 - 1 < x@i
15. v1 ≤ x
16. ↑fst(firstn(n;L)[v1 - 1]) = v
⊢ (fst(nth_tl(v1;firstn(n;L))[x - v1])) = v ∈ Id
BY
{ ((RWO "select_nth_tl" 0 THENA Auto) THEN RWO "select_firstn" 0 THEN Auto) }
Latex:
Latex:
1.  Info  :  Type
2.  L  :  (Id  \mtimes{}  Info)  List@i
3.  n  :  \mBbbN{}||L||@i
4.  x  :  \mBbbN{}||L||@i
5.  x  <  n@i
6.  (fst(L[x]))  =  (fst(L[n]))@i
7.  eval  i  =  fst(L[n])  in
      eval  z  =  last\_index(firstn(n;L);p.fst(p)  =  i)  in
          if  (z  =\msubz{}  0)  then  n  else  z  -  1  fi    <  n
8.  v  :  Id@i
9.  (fst(L[n]))  =  v@i
10.  v1  :  \mBbbN{}n  +  1@i
11.  v1  \mneq{}  0
12.  last\_index(firstn(n;L);x.fst(x)  =  v)  =  v1@i
13.  \mneg{}(\mexists{}x\mmember{}firstn(n;L).  \muparrow{}fst(x)  =  v)  supposing  v1  =  0@i
14.  v1  -  1  <  x@i
15.  v1  \mleq{}  x
16.  \muparrow{}fst(firstn(n;L)[v1  -  1])  =  v
\mvdash{}  (fst(nth\_tl(v1;firstn(n;L))[x  -  v1]))  =  v
By
Latex:
((RWO  "select\_nth\_tl"  0  THENA  Auto)  THEN  RWO  "select\_firstn"  0  THEN  Auto)
Home
Index