problem([]==>x:pnat=>y:pnat=>times(x,s(y))=plus(x,times(x,y))in pnat,
ind_strat(induction(lemma(pnat_primitive)-[(x:pnat)-s(v0)])then[base_case(sym_eval(normalize_term([reduction([1,1],[times1,equ(pnat,left)]),reduction([2,1],[plus1,equ(pnat,left)]),reduction([2,1],[times1,equ(pnat,left)])]))then[elementary(intro(new[y])then[identity,wfftacs])]),step_case(ripple(direction_out,wave(direction_out,[2,1],[plus2,equ(pnat,left)],[])then[wave(direction_out,[1,1],[times2,equ(pnat,left)],[])then[wave(direction_out,[2,1,2,1],[times2,equ(pnat,left)],[])]])then[unblock_then_fertilize(weak,unblock_fertilize_lazy([idtac])then fertilize(weak,fertilize_then_ripple(fertilize_left_or_right(left,[weak_fertilize(left,in,[1],v1)]))))])]),lambda(x,p_ind(x,lambda(v0,su(su(lambda(v1,su(v2,[v1 of v0],[v2]))of lambda(v0,su(su(lambda(v1,su(v2,[v1 of v0],[v2]))of lambda(v0,su(su(lambda(v1,su(v2,[v1 of v0],[v2]))of lambda(y,axiom),[times1 of v0],[v1]),[term_of(times1)],[times1])),[plus1 of times(0,v0)],[v1]),[term_of(plus1)],[plus1])),[times1 of s(v0)],[v1]),[term_of(times1)],[times1])),[v0,v1,lambda(v2,su(su(su(lambda(v3,su(v4,[v3 of v2],[v4]))of lambda(v2,su(su(su(lambda(v3,su(v4,[v3 of v2],[v4]))of lambda(v2,su(su(su(lambda(v3,su(v4,[v3 of v2],[v4]))of lambda(v2,su(lambda(v3,su(v4,[v3 of v2],[v4]))of _64399,[v1 of v2],[v3])),[v3 of v2],[v4]),[times2 of v0],[v3]),[term_of(times2)],[times2])),[v3 of s(v2)],[v4]),[times2 of v0],[v3]),[term_of(times2)],[times2])),[v3 of times(s(v0),v2)],[v4]),[plus2 of v0],[v3]),[term_of(plus2)],[plus2]))])),
[problem([x:pnat,v0:pnat,v1:y:pnat=>times(v0,s(y))=plus(v0,times(v0,y))in pnat]==>y:pnat=>plus(plus(v0,times(v0,y)),s(y))=s(plus(v0,plus(times(v0,y),y)))in pnat,
 generalise(times(v0,y),v2:pnat),lambda(v2,lambda(v3,su(su(v5,[v4 of v3],[v5]),[v2 of times(v0,v3)],[v4])))of _64214,
 [problem([x:pnat,v0:pnat,v1:y:pnat=>times(v0,s(y))=plus(v0,times(v0,y))in pnat]==>v2:pnat=>y:pnat=>plus(plus(v0,v2),s(y))=s(plus(v0,plus(v2,y)))in pnat,
  ind_strat(induction(lemma(pnat_primitive)-[(v0:pnat)-s(v3)])then[base_case(sym_eval(normalize_term([reduction([1,1,1],[plus1,equ(pnat,left)]),reduction([1,2,1],[plus1,equ(pnat,left)])]))),step_case(ripple(direction_out,wave(direction_out,[1,2,1],[plus2,equ(pnat,left)],[])then[wave(direction_out,[1,1,1],[plus2,equ(pnat,left)],[])then[wave(direction_out,[1,1],[plus2,equ(pnat,left)],[])]])then[unblock_then_fertilize(weak,unblock_fertilize_lazy([idtac])then fertilize(weak,fertilize_then_ripple(fertilize_left_or_right(left,[weak_fertilize(left,in,[1],v4)]))then elementary(intro(new[v2])then[intro(new[y])then[identity,wfftacs],wfftacs])))])]),p_ind(v0,lambda(v3,lambda(v2,su(su(lambda(v4,su(su(v6,[v5 of v2],[v6]),[v4 of v3],[v5]))of lambda(v3,lambda(v2,su(su(lambda(v4,su(su(v6,[v5 of v2],[v6]),[v4 of v3],[v5]))of _63837,[plus1 of plus(v3,v2)],[v4]),[term_of(plus1)],[plus1]))),[plus1 of v3],[v4]),[term_of(plus1)],[plus1]))),[v3,v4,lambda(v5,lambda(v6,su(su(su(lambda(v2,su(su(v8,[v7 of v6],[v8]),[v2 of v5],[v7]))of lambda(v5,lambda(v6,su(su(su(lambda(v2,su(su(v8,[v7 of v6],[v8]),[v2 of v5],[v7]))of lambda(v5,lambda(v6,su(su(su(lambda(v2,su(su(v8,[v7 of v6],[v8]),[v2 of v5],[v7]))of lambda(v5,lambda(v6,su(su(lambda(v2,su(su(v8,[v7 of v6],[v8]),[v2 of v5],[v7]))of lambda(v2,lambda(y,axiom)),[v2 of v6],[v7]),[v4 of v5],[v2]))),[v2 of s(v6)],[v7]),[plus2 of plus(v3,v5)],[v2]),[term_of(plus2)],[plus2]))),[v2 of v5],[v7]),[plus2 of v3],[v2]),[term_of(plus2)],[plus2]))),[v2 of plus(v5,v6)],[v7]),[plus2 of v3],[v2]),[term_of(plus2)],[plus2])))]),
  [problem([x:pnat,v0:pnat,v1:y:pnat=>times(v0,s(y))=plus(v0,times(v0,y))in pnat]==>v2:pnat=>y:pnat=>plus(v2,s(y))=s(plus(v2,y))in pnat,
   ind_strat(induction(lemma(pnat_primitive)-[(v2:pnat)-s(v3)])then[base_case(sym_eval(normalize_term([reduction([1,1],[plus1,equ(pnat,left)]),reduction([1,2,1],[plus1,equ(pnat,left)])]))then[elementary(intro(new[y])then[identity,wfftacs])]),step_case(ripple(direction_out,wave(direction_out,[1,1],[plus2,equ(pnat,left)],[])then[wave(direction_out,[1,2,1],[plus2,equ(pnat,left)],[])])then[unblock_then_fertilize(weak,unblock_fertilize_lazy([idtac])then fertilize(weak,fertilize_then_ripple(fertilize_left_or_right(left,[weak_fertilize(left,in,[1],v4)]))then elementary(intro(new[y])then[identity,wfftacs])))])]),lambda(v2,p_ind(v2,lambda(v3,su(su(lambda(v4,su(v5,[v4 of v3],[v5]))of lambda(v3,su(su(lambda(v4,su(v5,[v4 of v3],[v5]))of lambda(y,axiom),[plus1 of v3],[v4]),[term_of(plus1)],[plus1])),[plus1 of s(v3)],[v4]),[term_of(plus1)],[plus1])),[v3,v4,lambda(v5,su(su(su(lambda(v6,su(v7,[v6 of v5],[v7]))of lambda(v5,su(su(su(lambda(v6,su(v7,[v6 of v5],[v7]))of lambda(v5,su(lambda(v6,su(v7,[v6 of v5],[v7]))of lambda(y,axiom),[v4 of v5],[v6])),[v6 of v5],[v7]),[plus2 of v3],[v6]),[term_of(plus2)],[plus2])),[v6 of s(v5)],[v7]),[plus2 of v3],[v6]),[term_of(plus2)],[plus2]))])),
   [
   ]) ext _63837
  ]) ext _64214
 ]) ext _64399
]).
