Step * of Lemma select-last-in-nat-missing_wf

[max:ℕ]. ∀[missing:{l:ℕ List| l-ordered(ℕ;x,y.x < y;l)} ].
  (select-last-in-nat-missing(max;missing) ∈ {x:ℤ
                                              ((-1) ≤ x)
                                              ∧ (x ≤ max)
                                              ∧ ((0 ≤ x)  (x ∈ missing)))
                                              ∧ (∀y:ℕ((¬(y ∈ missing))  y < max  (y ≤ x)))
                                              ∧ (∀y:ℕ(y < max  x <  (y ∈ missing)))} )
BY
((UnivCD THENA Auto)
   THEN DVarSets
   THEN UnfoldAtAddr [2] 0
   THEN NatInd 1
   THEN Reduce 0
   THEN Try (Complete ((AutoSplit THEN MemTypeCD THEN Auto THEN All(RWO "assert-in-missing-nat-iff") THEN Auto)))) }

1
.....upcase..... 
1. missing : ℕ List
2. l-ordered(ℕ;x,y.x < y;missing)
3. max : ℤ
4. 0 < max
5. primrec(max 1;if in-missing(0;missing) then -1 else fi m,r. if in-missing(m;missing) then else fi )
   ∈ {x:ℤ
      ((-1) ≤ x)
      ∧ (x ≤ (max 1))
      ∧ ((0 ≤ x)  (x ∈ missing)))
      ∧ (∀y:ℕ((¬(y ∈ missing))  y < max  (y ≤ x)))
      ∧ (∀y:ℕ(y < max  x <  (y ∈ missing)))} 
⊢ primrec(max;if in-missing(0;missing) then -1 else fi m,r. if in-missing(m;missing) then else fi )
  ∈ {x:ℤ
     ((-1) ≤ x)
     ∧ (x ≤ max)
     ∧ ((0 ≤ x)  (x ∈ missing)))
     ∧ (∀y:ℕ((¬(y ∈ missing))  y < max  (y ≤ x)))
     ∧ (∀y:ℕ(y < max  x <  (y ∈ missing)))} 


Latex:


\mforall{}[max:\mBbbN{}].  \mforall{}[missing:\{l:\mBbbN{}  List|  l-ordered(\mBbbN{};x,y.x  <  y;l)\}  ].
    (select-last-in-nat-missing(max;missing)  \mmember{}  \{x:\mBbbZ{}| 
                                                                                            ((-1)  \mleq{}  x)
                                                                                            \mwedge{}  (x  \mleq{}  max)
                                                                                            \mwedge{}  ((0  \mleq{}  x)  {}\mRightarrow{}  (\mneg{}(x  \mmember{}  missing)))
                                                                                            \mwedge{}  (\mforall{}y:\mBbbN{}.  ((\mneg{}(y  \mmember{}  missing))  {}\mRightarrow{}  y  <  max  {}\mRightarrow{}  (y  \mleq{}  x)))
                                                                                            \mwedge{}  (\mforall{}y:\mBbbN{}.  (y  <  max  {}\mRightarrow{}  x  <  y  {}\mRightarrow{}  (y  \mmember{}  missing)))\}  )


By

((UnivCD  THENA  Auto)
  THEN  DVarSets
  THEN  UnfoldAtAddr  [2]  0
  THEN  NatInd  1
  THEN  Reduce  0
  THEN  Try  (Complete  ((AutoSplit
                                            THEN  MemTypeCD
                                            THEN  Auto
                                            THEN  All(RWO  "assert-in-missing-nat-iff")
                                            THEN  Auto))))




Home Index