problem([]==>l:int list=>length(sort(l))=length(l)in pnat,
ind_strat(induction(lemma(list_primitive)-[(l:int list)-v1::v0])then[base_case(sym_eval(normalize_term([reduction([1,1,1],[sort1,equ(int list,left)]),reduction([1,1],[length1,equ(pnat,left)]),reduction([2,1],[length1,equ(pnat,left)])]))then[elementary(identity)]),step_case(ripple(direction_out,wave(direction_out,[2,1],[length2,equ(pnat,left)],[])then[wave(direction_out,[1,1,1],[sort2,equ(int list,left)],[])])then[unblock_then_fertilize(weak,unblock_fertilize_lazy([idtac])then fertilize(weak,fertilize_then_ripple(fertilize_left_or_right(right,[weak_fertilize(right,in,[1],v2)]))))])]),lambda(l,list_ind(l,su(su(su(axiom,[term_of(length1)],[length1]),[term_of(length1)],[length1]),[term_of(sort1)],[sort1]),[v1,v0,v2,su(su(su(su(su(su(_80725,[v3 of v0],[v4]),[sort2 of v1],[v3]),[term_of(sort2)],[sort2]),[v3 of v0],[v4]),[length2 of v1],[v3]),[term_of(length2)],[length2])])),
[problem([l:int list,v1:int,v0:int list,v2:length(sort(v0))=length(v0)in pnat]==>length(insert(v1,sort(v0)))=s(length(sort(v0)))in pnat,
 generalise(sort(v0),v3:int list),lambda(v3,su(v4,[v3 of sort(v0)],[v4]))of _80605,
 [problem([l:int list,v1:int,v0:int list,v2:length(sort(v0))=length(v0)in pnat]==>v3:int list=>length(insert(v1,v3))=s(length(v3))in pnat,
  ind_strat(induction(lemma(list_primitive)-[(v3:int list)-v5::v4])then[base_case(sym_eval(normalize_term([reduction([1,1,1],[insert1,equ(int list,left)]),reduction([1,1],[length2,equ(pnat,left)]),reduction([1,1,1],[length1,equ(pnat,left)]),reduction([1,2,1],[length1,equ(pnat,left)])]))then[elementary(identity)]),step_case(ripple(direction_out,wave(direction_out,[1,2,1],[length2,equ(pnat,left)],[])then[casesplit(disjunction([v1<v5=>void,v1<v5]))then[wave(direction_out,[1,1,1],[insert3,equ(int list,left)],[])then[wave(direction_out,[1,1],[length2,equ(pnat,left)],[])],wave(direction_out,[1,1,1],[insert2,complementary,equ(int list,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],v6)]))then elementary(identity))),idtac])]),lambda(v3,list_ind(v3,su(su(su(su(su(su(su(axiom,[term_of(length1)],[length1]),[term_of(length1)],[length1]),[v4 of nil],[v5]),[length2 of v1],[v4]),[term_of(length2)],[length2]),[insert1 of v1],[v4]),[term_of(insert1)],[insert1]),[v5,v4,v6,su(su(su(lambda(v8,decide(v8,[v9,lambda(v7,su(su(su(su(su(su(su(su(axiom,[v8 of insert(v1,v4)],[v9]),[length2 of v5],[v8]),[term_of(length2)],[length2]),[v10 of v7],[v8]),[v9 of v4],[v10]),[v8 of v5],[v9]),[insert3 of v1],[v8]),[term_of(insert3)],[insert3]))of v9],[v10,lambda(v7,su(su(su(su(su(_80009,[v10 of v7],[v8]),[v9 of v4],[v10]),[v8 of v5],[v9]),[insert2 of v1],[v8]),[term_of(insert2)],[insert2]))of v10]))of su(su(su(v9,[v8 of v5],[v9]),[v7 of v1],[v8]),[term_of(decless2)],[v7]),[v7 of v4],[v8]),[length2 of v5],[v7]),[term_of(length2)],[length2])])),
  [problem([l:int list,v1:int,v0:int list,v2:length(sort(v0))=length(v0)in pnat,v3:int list,v5:int,v4:int list,v6:length(insert(v1,v4))=s(length(v4))in pnat,v7:v1<v5]==>length(v1::v5::v4)=s(s(length(v4)))in pnat,
   sym_eval(normalize_term([reduction([1,1],[length2,equ(pnat,left)]),reduction([1,1,1],[length2,equ(pnat,left)])]))then[elementary(identity)],su(su(su(su(su(su(axiom,[v8 of v4],[v9]),[length2 of v5],[v8]),[term_of(length2)],[length2]),[v8 of(v5::v4)],[v9]),[length2 of v1],[v8]),[term_of(length2)],[length2]),
   [
   ]) ext _80009
  ]) ext _80605
 ]) ext _80725
]).
