Step * of Lemma st-lookup-outl

[T:Id ─→ Type]
  ∀tab:secret-table(T). ∀x:Atom1.
    ∃n:ℕ||tab|| 
     ((n ≤ ptr(tab))
     ∧ (st-atom(tab;n) x ∈ Atom1)
     ∧ (outl(st-lookup(tab;x)) = <key(tab;n), data(tab;n)> ∈ (ℕ Atom1 × data(T)))) 
    supposing ↑isl(st-lookup(tab;x))
BY
(Auto
   THEN (MoveToConcl (-1))
   THEN DVar `tab'
   THEN DVar `t1'
   THEN RepUR ``st-lookup st-length st-ptr st-atom `` 0
   THEN (GenConclAtAddr [1; 1; 1; 1])
   THEN Try (Complete (Auto))) }

1
.....wf..... 
1. [T] Id ─→ Type
2. : ℕ@i
3. t2 : ℕ@i
4. t3 : ℕK ─→ (Atom1 × ℕ Atom1 × data(T))@i
5. Atom1@i
⊢ mu(λn.(t2 <n ∨bK ≤n ∨bfst((t3 n)) =a1 x)) ∈ ℕ

2
1. [T] Id ─→ Type
2. : ℕ@i
3. t2 : ℕ@i
4. t3 : ℕK ─→ (Atom1 × ℕ Atom1 × data(T))@i
5. Atom1@i
6. : ℕ@i
7. mu(λn.(t2 <n ∨bK ≤n ∨bfst((t3 n)) =a1 x)) v ∈ ℕ@i
⊢ (↑isl(let in
            if t2 <n ∨bK ≤then inr ⋅  else inl (snd((t3 n))) fi ))
 (∃n:ℕK
     ((n ≤ t2)
     ∧ ((fst((t3 n))) x ∈ Atom1)
     ∧ (outl(let in
                 if t2 <n ∨bK ≤then inr ⋅  else inl (snd((t3 n))) fi )
       = <key(<K, t2, t3>;n), data(<K, t2, t3>;n)>
       ∈ (ℕ Atom1 × data(T)))))


Latex:


\mforall{}[T:Id  {}\mrightarrow{}  Type]
    \mforall{}tab:secret-table(T).  \mforall{}x:Atom1.
        \mexists{}n:\mBbbN{}||tab|| 
          ((n  \mleq{}  ptr(tab))  \mwedge{}  (st-atom(tab;n)  =  x)  \mwedge{}  (outl(st-lookup(tab;x))  =  <key(tab;n),  data(tab;n)>)) 
        supposing  \muparrow{}isl(st-lookup(tab;x))


By

(Auto
  THEN  (MoveToConcl  (-1))
  THEN  DVar  `tab'
  THEN  DVar  `t1'
  THEN  RepUR  ``st-lookup  st-length  st-ptr  st-atom  ``  0
  THEN  (GenConclAtAddr  [1;  1;  1;  1])
  THEN  Try  (Complete  (Auto)))




Home Index