Step * 1 of Lemma p-first-append


1. Type
2. Type
3. L1 (A ⟶ (B Top)) List
4. L2 (A ⟶ (B Top)) List
5. A
⊢ (p-first(L1 L2) x) (p-first([p-first(L1); p-first(L2)]) x) ∈ (B Top)
BY
TACTIC:(Unfold `p-first` THEN (RWO "list_accum_append" THENA Auto)) }

1
1. Type
2. Type
3. L1 (A ⟶ (B Top)) List
4. L2 (A ⟶ (B Top)) List
5. A
⊢ ((λx.accumulate (with value and list item f):
        case of inl(z) => inr(z) => x
       over list:
         L2
       with starting value:
        accumulate (with value and list item f):
         case of inl(z) => inr(z) => x
        over list:
          L1
        with starting value:
         inr ⋅ ))) 
   x)
((λx.accumulate (with value and list item f):
        case of inl(z) => inr(z) => x
       over list:
         x.accumulate (with value and list item f):
              case of inl(z) => inr(z) => x
             over list:
               L1
             with starting value:
              inr ⋅ );
          λx.accumulate (with value and list item f):
              case of inl(z) => inr(z) => x
             over list:
               L2
             with starting value:
              inr ⋅ )]
       with starting value:
        inr ⋅ )) 
   x)
∈ (B Top)


Latex:


Latex:

1.  A  :  Type
2.  B  :  Type
3.  L1  :  (A  {}\mrightarrow{}  (B  +  Top))  List
4.  L2  :  (A  {}\mrightarrow{}  (B  +  Top))  List
5.  x  :  A
\mvdash{}  (p-first(L1  @  L2)  x)  =  (p-first([p-first(L1);  p-first(L2)])  x)


By


Latex:
TACTIC:(Unfold  `p-first`  0  THEN  (RWO  "list\_accum\_append"  0  THENA  Auto))




Home Index