Step
*
1
2
1
1
of Lemma
poly-int-value
1. k : ℕ
2. ∀k:ℕk. ∀[p:tree(ℤ)]. (∀[l:Top List]. (p@l = p@[] ∈ ℤ)) supposing ((↑poly-int(p)) and (tree_size(p) ≤ k))
3. left : tree(ℤ)
4. p2 : tree(ℤ)
5. tree_size(tree_node(left;p2)) ≤ k
6. ↑(poly-int(left) ∧b poly-zero(p2))
7. l : Top List
⊢ eval t = tl(l) in
  eval av = left@t in
  eval bv = p2@l in
    if bv=0 then av else eval h = hd(l) in av + (h * bv)
= eval av = left@⋅ in
  eval bv = p2@[] in
    if bv=0 then av else eval h = hd([]) in av + (h * bv)
∈ ℤ
BY
{ (((RW assert_pushdownC (-2) THENA Auto) THEN D -2)
   THEN ((InstLemma `poly-zero-val` [⌜p2⌝;⌜l⌝]⋅ THENA Auto) THEN HypSubst' (-1) 0)
   THEN (InstLemma `poly-zero-val` [⌜p2⌝;⌜[]⌝]⋅ THENA Auto)
   THEN HypSubst' (-1) 0
   THEN Reduce 0) }
1
1. k : ℕ
2. ∀k:ℕk. ∀[p:tree(ℤ)]. (∀[l:Top List]. (p@l = p@[] ∈ ℤ)) supposing ((↑poly-int(p)) and (tree_size(p) ≤ k))
3. left : tree(ℤ)
4. p2 : tree(ℤ)
5. tree_size(tree_node(left;p2)) ≤ k
6. ↑poly-int(left)
7. ↑poly-zero(p2)
8. l : Top List
9. p2@l = 0 ∈ ℤ
10. p2@[] = 0 ∈ ℤ
⊢ eval t = tl(l) in eval av = left@t in   av = eval av = left@⋅ in av ∈ ℤ
Latex:
Latex:
1.  k  :  \mBbbN{}
2.  \mforall{}k:\mBbbN{}k
          \mforall{}[p:tree(\mBbbZ{})].  (\mforall{}[l:Top  List].  (p@l  =  p@[]))  supposing  ((\muparrow{}poly-int(p))  and  (tree\_size(p)  \mleq{}  k))
3.  left  :  tree(\mBbbZ{})
4.  p2  :  tree(\mBbbZ{})
5.  tree\_size(tree\_node(left;p2))  \mleq{}  k
6.  \muparrow{}(poly-int(left)  \mwedge{}\msubb{}  poly-zero(p2))
7.  l  :  Top  List
\mvdash{}  eval  t  =  tl(l)  in
    eval  av  =  left@t  in
    eval  bv  =  p2@l  in
        if  bv=0  then  av  else  eval  h  =  hd(l)  in  av  +  (h  *  bv)
=  eval  av  =  left@\mcdot{}  in
    eval  bv  =  p2@[]  in
        if  bv=0  then  av  else  eval  h  =  hd([])  in  av  +  (h  *  bv)
By
Latex:
(((RW  assert\_pushdownC  (-2)  THENA  Auto)  THEN  D  -2)
  THEN  ((InstLemma  `poly-zero-val`  [\mkleeneopen{}p2\mkleeneclose{};\mkleeneopen{}l\mkleeneclose{}]\mcdot{}  THENA  Auto)  THEN  HypSubst'  (-1)  0)
  THEN  (InstLemma  `poly-zero-val`  [\mkleeneopen{}p2\mkleeneclose{};\mkleeneopen{}[]\mkleeneclose{}]\mcdot{}  THENA  Auto)
  THEN  HypSubst'  (-1)  0
  THEN  Reduce  0)
Home
Index