Step * 1 1 of Lemma C_TYPE-induction2


1. [P] C_TYPE() ⟶ ℙ
2. P[C_Void()]@i
3. P[C_Int()]@i
4. ∀fields:(Atom × C_TYPE()) List. ((∀i:ℕ||fields||. P[snd(fields[i])])  P[C_Struct(fields)])@i
5. fields (Atom × C_TYPE()) List@i
6. ∀i:ℕ||fields||. let u1,u2 fields[i] in P[u2]@i
7. : ℕ||fields||@i
8. v1 Atom@i
9. v2 C_TYPE()@i
10. fields[i] = <v1, v2> ∈ (Atom × C_TYPE())@i
⊢ P[v2]  P[v2]
BY
Auto }


Latex:


Latex:

1.  [P]  :  C\_TYPE()  {}\mrightarrow{}  \mBbbP{}
2.  P[C\_Void()]@i
3.  P[C\_Int()]@i
4.  \mforall{}fields:(Atom  \mtimes{}  C\_TYPE())  List.  ((\mforall{}i:\mBbbN{}||fields||.  P[snd(fields[i])])  {}\mRightarrow{}  P[C\_Struct(fields)])@i
5.  fields  :  (Atom  \mtimes{}  C\_TYPE())  List@i
6.  \mforall{}i:\mBbbN{}||fields||.  let  u1,u2  =  fields[i]  in  P[u2]@i
7.  i  :  \mBbbN{}||fields||@i
8.  v1  :  Atom@i
9.  v2  :  C\_TYPE()@i
10.  fields[i]  =  <v1,  v2>@i
\mvdash{}  P[v2]  {}\mRightarrow{}  P[v2]


By


Latex:
Auto




Home Index