Step
*
2
1
of Lemma
mrec-label-cases
1. s : (Atom × ((Atom × ((Atom + Atom + Type) List)) List)) List
2. n : Atom
3. lbl : Atom
4. x : (Atom × ((Atom + Atom + Type) List)) List
5. apply-alist(AtomDeq;s;n) = (inl x) ∈ ((Atom × ((Atom + Atom + Type) List)) List?)
⊢ 0 < ||case apply-alist(AtomDeq;x;lbl) of inl(as) => as | inr(_) => []|| 
⇒ (lbl ∈ map(λp.(fst(p));x))
BY
{ ((GenConclTerm ⌜apply-alist(AtomDeq;x;lbl)⌝⋅ THENA Auto) THEN D -2 THEN Reduce 0 THEN Auto) }
1
1. s : (Atom × ((Atom × ((Atom + Atom + Type) List)) List)) List
2. n : Atom
3. lbl : Atom
4. x : (Atom × ((Atom + Atom + Type) List)) List
5. apply-alist(AtomDeq;s;n) = (inl x) ∈ ((Atom × ((Atom + Atom + Type) List)) List?)
6. x1 : (Atom + Atom + Type) List
7. apply-alist(AtomDeq;x;lbl) = (inl x1) ∈ ((Atom + Atom + Type) List?)
8. 0 < ||x1||
⊢ (lbl ∈ map(λp.(fst(p));x))
Latex:
Latex:
1.  s  :  (Atom  \mtimes{}  ((Atom  \mtimes{}  ((Atom  +  Atom  +  Type)  List))  List))  List
2.  n  :  Atom
3.  lbl  :  Atom
4.  x  :  (Atom  \mtimes{}  ((Atom  +  Atom  +  Type)  List))  List
5.  apply-alist(AtomDeq;s;n)  =  (inl  x)
\mvdash{}  0  <  ||case  apply-alist(AtomDeq;x;lbl)  of  inl(as)  =>  as  |  inr($_{}$)  =>  []||
{}\mRightarrow{}  (lbl  \mmember{}  map(\mlambda{}p.(fst(p));x))
By
Latex:
((GenConclTerm  \mkleeneopen{}apply-alist(AtomDeq;x;lbl)\mkleeneclose{}\mcdot{}  THENA  Auto)  THEN  D  -2  THEN  Reduce  0  THEN  Auto)
Home
Index