Step * 1 2 1 1 1 of Lemma first-class-val


1. Info Type
2. Type
3. EClass(A)@i'
4. EClass(A) List@i'
5. ∀es:EO+(Info). ∀e:E.
     ((↑e ∈b first-class(v))
      ((↑e ∈b v[index-of-first in v.e ∈b 1])
        ∧ (first-class(v)(e) v[index-of-first in v.e ∈b 1](e) ∈ A)))@i'
6. es EO+(Info)@i'
7. ∀e:E
     ((↑e ∈b first-class(v))
      ((↑e ∈b v[index-of-first in v.e ∈b 1])
        ∧ (first-class(v)(e) v[index-of-first in v.e ∈b 1](e) ∈ A)))
8. E@i
9. ↑e ∈b [u?first-class(v)]@i
10. [u?first-class(v)](e) first-class(v)(e) ∈ A
11. ¬↑e ∈b u
12. ¬↑e ∈b u
13. ↑e ∈b first-class(v)
14. (↑e ∈b v[index-of-first in v.e ∈b 1]) ∧ (first-class(v)(e) v[index-of-first in v.e ∈b 1](e) ∈ A)
⊢ (↑e ∈b [u v][if 0 <index-of-first in v.e ∈b then index-of-first in v.e ∈b else fi  1])
∧ ([u?first-class(v)](e)
  [u v][if 0 <index-of-first in v.e ∈b then index-of-first in v.e ∈b else fi  1](e)
  ∈ A)
BY
((FLemma `is-first-class2` [-2] THENA Auto) THEN AutoSplit) }

1
1. Info Type
2. Type
3. EClass(A)@i'
4. EClass(A) List@i'
5. ∀es:EO+(Info). ∀e:E.
     ((↑e ∈b first-class(v))
      ((↑e ∈b v[index-of-first in v.e ∈b 1])
        ∧ (first-class(v)(e) v[index-of-first in v.e ∈b 1](e) ∈ A)))@i'
6. es EO+(Info)@i'
7. ∀e:E
     ((↑e ∈b first-class(v))
      ((↑e ∈b v[index-of-first in v.e ∈b 1])
        ∧ (first-class(v)(e) v[index-of-first in v.e ∈b 1](e) ∈ A)))
8. E@i
9. ↑e ∈b [u?first-class(v)]@i
10. [u?first-class(v)](e) first-class(v)(e) ∈ A
11. ¬↑e ∈b u
12. ¬↑e ∈b u
13. ↑e ∈b first-class(v)
14. (↑e ∈b v[index-of-first in v.e ∈b 1]) ∧ (first-class(v)(e) v[index-of-first in v.e ∈b 1](e) ∈ A)
15. 0 < index-of-first in v.e ∈b X
16. 0 < index-of-first in v.e ∈b X
⊢ (↑e ∈b [u v][(index-of-first in v.e ∈b 1) 1])
∧ ([u?first-class(v)](e) [u v][(index-of-first in v.e ∈b 1) 1](e) ∈ A)


Latex:



1.  Info  :  Type
2.  A  :  Type
3.  u  :  EClass(A)@i'
4.  v  :  EClass(A)  List@i'
5.  \mforall{}es:EO+(Info).  \mforall{}e:E.
          ((\muparrow{}e  \mmember{}\msubb{}  first-class(v))
          {}\mRightarrow{}  ((\muparrow{}e  \mmember{}\msubb{}  v[index-of-first  X  in  v.e  \mmember{}\msubb{}  X  -  1])
                \mwedge{}  (first-class(v)(e)  =  v[index-of-first  X  in  v.e  \mmember{}\msubb{}  X  -  1](e))))@i'
6.  es  :  EO+(Info)@i'
7.  \mforall{}e:E
          ((\muparrow{}e  \mmember{}\msubb{}  first-class(v))
          {}\mRightarrow{}  ((\muparrow{}e  \mmember{}\msubb{}  v[index-of-first  X  in  v.e  \mmember{}\msubb{}  X  -  1])
                \mwedge{}  (first-class(v)(e)  =  v[index-of-first  X  in  v.e  \mmember{}\msubb{}  X  -  1](e))))
8.  e  :  E@i
9.  \muparrow{}e  \mmember{}\msubb{}  [u?first-class(v)]@i
10.  [u?first-class(v)](e)  =  first-class(v)(e)
11.  \mneg{}\muparrow{}e  \mmember{}\msubb{}  u
12.  \mneg{}\muparrow{}e  \mmember{}\msubb{}  u
13.  \muparrow{}e  \mmember{}\msubb{}  first-class(v)
14.  (\muparrow{}e  \mmember{}\msubb{}  v[index-of-first  X  in  v.e  \mmember{}\msubb{}  X  -  1])
\mwedge{}  (first-class(v)(e)  =  v[index-of-first  X  in  v.e  \mmember{}\msubb{}  X  -  1](e))
\mvdash{}  (\muparrow{}e  \mmember{}\msubb{}  [u  /  v][if  0  <z  index-of-first  X  in  v.e  \mmember{}\msubb{}  X
                  then  index-of-first  X  in  v.e  \mmember{}\msubb{}  X  +  1
                  else  0
                  fi    -  1])
\mwedge{}  ([u?first-class(v)](e)
    =  [u  /  v][if  0  <z  index-of-first  X  in  v.e  \mmember{}\msubb{}  X  then  index-of-first  X  in  v.e  \mmember{}\msubb{}  X  +  1  else  0  fi   
        -  1](e))


By

((FLemma  `is-first-class2`  [-2]  THENA  Auto)  THEN  AutoSplit)




Home Index