Step * of Lemma add-ipoly_wf1

[p,q:iMonomial() List].  (add-ipoly(p;q) ∈ iMonomial() List)
BY
TACTIC:(InductionOnList
          THEN Auto
          THEN (RecUnfold `add-ipoly` THEN RepeatFor ((CallByValueReduce THENA Auto)))
          THEN Reduce 0
          THEN Try (Declaration)
          THEN -1
          THEN Reduce 0) }

1
1. iMonomial()
2. iMonomial() List
3. ∀[q:iMonomial() List]. (add-ipoly(v;q) ∈ iMonomial() List)
⊢ [u v] ∈ iMonomial() List

2
1. iMonomial()
2. iMonomial() List
3. ∀[q:iMonomial() List]. (add-ipoly(v;q) ∈ iMonomial() List)
4. u1 iMonomial()
5. v1 iMonomial() List
⊢ if imonomial-le(u;u1)
  then if imonomial-le(u1;u)
       then let x ⟵ add-ipoly(v;v1)
            in let cp,vs 
               in eval cp (fst(u1)) in
                  if c=0 then else [<c, vs> x]
       else let x ⟵ add-ipoly(v;[u1 v1])
            in [u x]
       fi 
  else let x ⟵ add-ipoly([u v];v1)
       in [u1 x]
  fi  ∈ iMonomial() List


Latex:


Latex:
\mforall{}[p,q:iMonomial()  List].    (add-ipoly(p;q)  \mmember{}  iMonomial()  List)


By


Latex:
TACTIC:(InductionOnList
                THEN  Auto
                THEN  (RecUnfold  `add-ipoly`  0  THEN  RepeatFor  2  ((CallByValueReduce  0  THENA  Auto)))
                THEN  Reduce  0
                THEN  Try  (Declaration)
                THEN  D  -1
                THEN  Reduce  0)




Home Index