Step * 2 2 1 2 1 1 3 of Lemma select-front-as-reduce


1. : ℕ
2. Top
3. Top List
4. reduce(λu,x. if ||x|| <then [u] else tl(x) [u] fi ;[];v) rev(firstn(n 1;v))
5. ||v|| ≤ (n 1)
6. (n 1) ≤ ||v||
7. 0 < 1
8. firstn(n;v) nth_tl(n;v)
⊢ nth_tl(1 n;v) []
BY
xxx(Assert ||nth_tl(1 n;v)|| 0 ∈ ℤ BY
            ((InstLemma `length_nth_tl` [⌜Top⌝;⌜v⌝;⌜n⌝]⋅ THENA Auto) THEN Auto'))xxx }

1
1. : ℕ
2. Top
3. Top List
4. reduce(λu,x. if ||x|| <then [u] else tl(x) [u] fi ;[];v) rev(firstn(n 1;v))
5. ||v|| ≤ (n 1)
6. (n 1) ≤ ||v||
7. 0 < 1
8. firstn(n;v) nth_tl(n;v)
9. ||nth_tl(1 n;v)|| 0 ∈ ℤ
⊢ nth_tl(1 n;v) []


Latex:


Latex:

1.  n  :  \mBbbN{}
2.  u  :  Top
3.  v  :  Top  List
4.  reduce(\mlambda{}u,x.  if  ||x||  <z  n  +  1  then  x  @  [u]  else  tl(x)  @  [u]  fi  ;[];v)  \msim{}  rev(firstn(n  +  1;v))
5.  ||v||  \mleq{}  (n  +  1)
6.  (n  +  1)  \mleq{}  ||v||
7.  0  <  n  +  1
8.  v  \msim{}  firstn(n;v)  @  nth\_tl(n;v)
\mvdash{}  nth\_tl(1  +  n;v)  \msim{}  []


By


Latex:
xxx(Assert  ||nth\_tl(1  +  n;v)||  =  0  BY
                    ((InstLemma  `length\_nth\_tl`  [\mkleeneopen{}Top\mkleeneclose{};\mkleeneopen{}v\mkleeneclose{};\mkleeneopen{}1  +  n\mkleeneclose{}]\mcdot{}  THENA  Auto)  THEN  Auto'))xxx




Home Index