Step * 1 of Lemma assert-palindrome-test


1. Type
2. eq EqDecider(T)
3. List
⊢ uiff(↑accumulate (with value and list item p):
         let x,x' 
         in eval a ∧b (eq x') in
            b
        over list:
          zip(rev(L);L)
        with starting value:
         tt);rev(L) L ∈ (T List))
BY
Subst ⌜accumulate (with value and list item p):
          let x,x' 
          in eval a ∧b (eq x') in
             b
         over list:
           zip(rev(L);L)
         with starting value:
          tt) list-deq(eq) rev(L) L⌝ 0⋅ }

1
.....equality..... 
1. Type
2. eq EqDecider(T)
3. List
⊢ accumulate (with value and list item p):
   let x,x' 
   in eval a ∧b (eq x') in
      b
  over list:
    zip(rev(L);L)
  with starting value:
   tt) list-deq(eq) rev(L) L

2
1. Type
2. eq EqDecider(T)
3. List
⊢ uiff(↑(list-deq(eq) rev(L) L);rev(L) L ∈ (T List))


Latex:


Latex:

1.  T  :  Type
2.  eq  :  EqDecider(T)
3.  L  :  T  List
\mvdash{}  uiff(\muparrow{}accumulate  (with  value  a  and  list  item  p):
                  let  x,x'  =  p 
                  in  eval  b  =  a  \mwedge{}\msubb{}  (eq  x  x')  in
                        b
                over  list:
                    zip(rev(L);L)
                with  starting  value:
                  tt);rev(L)  =  L)


By


Latex:
Subst  \mkleeneopen{}accumulate  (with  value  a  and  list  item  p):
                let  x,x'  =  p 
                in  eval  b  =  a  \mwedge{}\msubb{}  (eq  x  x')  in
                      b
              over  list:
                  zip(rev(L);L)
              with  starting  value:
                tt)  \msim{}  list-deq(eq)  rev(L)  L\mkleeneclose{}  0\mcdot{}




Home Index