Step
*
2
1
of Lemma
remove-nat-missing-prop
1. m : ℤ@i
2. [%18] : (-1) ≤ m@i
3. s1 : ℕ List@i
4. [%17] : l-ordered(ℕ;x,y.x < y;s1) ∧ (∀x∈s1.x < m)@i
5. ¬(s1 = [] ∈ (ℕ List))
6. x : ℕ@i
7. y : ℕ@i
8. y = m ∈ ℤ
9. last(s1) = (m - 1) ∈ ℤ
⊢ ↑member-nat-missing(x;eval n = select-last-in-nat-missing(last(s1);s1) in <n, filter(λx.x <z n;s1)>) 
⇐⇒ (¬(x = y ∈ ℕ)\000C) ∧ (↑member-nat-missing(x;<m, s1>))
BY
{ Assert ⌜<select-last-in-nat-missing(last(s1);s1), filter(λx.x <z select-last-in-nat-missing(last(s1);s1);s1)>
          ∈ nat-missing-type()⌝⋅ }
1
.....assertion..... 
1. m : ℤ@i
2. [%18] : (-1) ≤ m@i
3. s1 : ℕ List@i
4. [%17] : l-ordered(ℕ;x,y.x < y;s1) ∧ (∀x∈s1.x < m)@i
5. ¬(s1 = [] ∈ (ℕ List))
6. x : ℕ@i
7. y : ℕ@i
8. y = m ∈ ℤ
9. last(s1) = (m - 1) ∈ ℤ
⊢ <select-last-in-nat-missing(last(s1);s1), filter(λx.x <z select-last-in-nat-missing(last(s1);s1);s1)>
  ∈ nat-missing-type()
2
1. m : ℤ@i
2. [%18] : (-1) ≤ m@i
3. s1 : ℕ List@i
4. [%17] : l-ordered(ℕ;x,y.x < y;s1) ∧ (∀x∈s1.x < m)@i
5. ¬(s1 = [] ∈ (ℕ List))
6. x : ℕ@i
7. y : ℕ@i
8. y = m ∈ ℤ
9. last(s1) = (m - 1) ∈ ℤ
10. <select-last-in-nat-missing(last(s1);s1), filter(λx.x <z select-last-in-nat-missing(last(s1);s1);s1)>
    ∈ nat-missing-type()
⊢ ↑member-nat-missing(x;eval n = select-last-in-nat-missing(last(s1);s1) in <n, filter(λx.x <z n;s1)>) 
⇐⇒ (¬(x = y ∈ ℕ)\000C) ∧ (↑member-nat-missing(x;<m, s1>))
Latex:
Latex:
1.  m  :  \mBbbZ{}@i
2.  [\%18]  :  (-1)  \mleq{}  m@i
3.  s1  :  \mBbbN{}  List@i
4.  [\%17]  :  l-ordered(\mBbbN{};x,y.x  <  y;s1)  \mwedge{}  (\mforall{}x\mmember{}s1.x  <  m)@i
5.  \mneg{}(s1  =  [])
6.  x  :  \mBbbN{}@i
7.  y  :  \mBbbN{}@i
8.  y  =  m
9.  last(s1)  =  (m  -  1)
\mvdash{}  \muparrow{}member-nat-missing(x;eval  n  =  select-last-in-nat-missing(last(s1);s1)  in
                                                <n,  filter(\mlambda{}x.x  <z  n;s1)>)
\mLeftarrow{}{}\mRightarrow{}  (\mneg{}(x  =  y))  \mwedge{}  (\muparrow{}member-nat-missing(x;<m,  s1>))
By
Latex:
Assert  \mkleeneopen{}<select-last-in-nat-missing(last(s1);s1)
                ,  filter(\mlambda{}x.x  <z  select-last-in-nat-missing(last(s1);s1);s1)
                >  \mmember{}  nat-missing-type()\mkleeneclose{}\mcdot{}
Home
Index