problem([]==>l:int list=>m:int list=>app(rev(l),rev(m))=rev(app(m,l))in int list,
ind_strat(induction(lemma(list_primitive)-[(m:int list)-v1::v0])then[base_case(sym_eval(normalize_term([reduction([2,1,1],[rev1,equ(int list,left)]),reduction([1,2,1],[app1,equ(int list,left)])]))),step_case(ripple(direction_out,wave(direction_out,[1,2,1],[app2,equ(int list,left)],[])then[wave(direction_out,[2,1],[rev2,equ(int list,left)],[])then[wave(direction_out,[2,1,1],[rev2,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(v0,lambda(v1,lambda(v2,su(su(v4,[v3 of v0],[v4]),[v2 of v1],[v3]))of lambda(m,list_ind(m,lambda(v0,su(lambda(v1,su(v2,[v1 of v0],[v2]))of lambda(v0,su(su(lambda(v1,su(v2,[v1 of v0],[v2]))of _208802,[app1 of v0],[v1]),[term_of(app1)],[app1])),[term_of(rev1)],[rev1])),[v1,v0,v2,lambda(v3,su(su(su(su(lambda(v4,su(v5,[v4 of v3],[v5]))of lambda(v3,su(su(su(lambda(v4,su(v5,[v4 of v3],[v5]))of lambda(v3,su(su(su(lambda(v4,su(v5,[v4 of v3],[v5]))of lambda(v3,su(lambda(v4,su(v5,[v4 of v3],[v5]))of _208651,[v2 of v3],[v4])),[v4 of v0],[v5]),[rev2 of v1],[v4]),[term_of(rev2)],[rev2])),[v4 of app(v0,v3)],[v5]),[rev2 of v1],[v4]),[term_of(rev2)],[rev2])),[v5 of v3],[v6]),[v4 of v0],[v5]),[app2 of v1],[v4]),[term_of(app2)],[app2]))])))),
[problem([m:int list]==>l:int list=>app(rev(l),nil)=rev(l)in int list,
 ind_strat(induction(lemma(list_primitive)-[(l:int list)-v1::v0])then[base_case(sym_eval(normalize_term([reduction([1,1,1],[rev1,equ(int list,left)]),reduction([1,1],[app1,equ(int list,left)]),reduction([2,1],[rev1,equ(int list,left)])]))then[elementary(identity)]),step_case(ripple(direction_out,wave(direction_out,[2,1],[rev2,equ(int list,left)],[])then[wave(direction_out,[1,1,1],[rev2,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(su(axiom,[term_of(rev1)],[rev1]),[app1 of nil],[v0]),[term_of(app1)],[app1]),[term_of(rev1)],[rev1]),[v1,v0,v2,su(su(su(su(su(su(_208258,[v3 of v0],[v4]),[rev2 of v1],[v3]),[term_of(rev2)],[rev2]),[v3 of v0],[v4]),[rev2 of v1],[v3]),[term_of(rev2)],[rev2])])),
 [problem([m:int list,l:int list,v1:int,v0:int list,v2:app(rev(v0),nil)=rev(v0)in int list]==>app(app(rev(v0),v1::nil),nil)=app(app(rev(v0),nil),v1::nil)in int list,
  generalise(rev(v0),v3:int list),lambda(v3,su(v4,[v3 of rev(v0)],[v4]))of _208117,
  [problem([m:int list,l:int list,v1:int,v0:int list,v2:app(rev(v0),nil)=rev(v0)in int list]==>v3:int list=>app(app(v3,v1::nil),nil)=app(app(v3,nil),v1::nil)in int list,
   ind_strat(induction(lemma(list_primitive)-[(v3:int list)-v5::v4])then[base_case(sym_eval(normalize_term([reduction([1,1,1],[app1,equ(int list,left)]),reduction([1,1],[app2,equ(int list,left)]),reduction([2,1,1],[app1,equ(int list,left)]),reduction([1,2,1],[app1,equ(int list,left)]),reduction([2,1],[app1,equ(int list,left)])]))then[elementary(identity)]),step_case(ripple(direction_out,wave(direction_out,[1,2,1],[app2,equ(int list,left)],[])then[wave(direction_out,[2,1],[app2,equ(int list,left)],[])then[wave(direction_out,[1,1,1],[app2,equ(int list,left)],[])then[wave(direction_out,[1,1],[app2,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,[2],v6)]))then elementary(identity)))])]),lambda(v3,list_ind(v3,su(su(su(su(su(su(su(su(su(su(su(su(axiom,[app1 of(v1::nil)],[v4]),[term_of(app1)],[app1]),[app1 of nil],[v4]),[term_of(app1)],[app1]),[app1 of nil],[v4]),[term_of(app1)],[app1]),[v5 of nil],[v6]),[v4 of nil],[v5]),[app2 of v1],[v4]),[term_of(app2)],[app2]),[app1 of(v1::nil)],[v4]),[term_of(app1)],[app1]),[v5,v4,v6,su(su(su(su(su(su(su(su(su(su(su(su(su(su(su(su(axiom,[v8 of nil],[v9]),[v7 of app(v4,v1::nil)],[v8]),[app2 of v5],[v7]),[term_of(app2)],[app2]),[v8 of(v1::nil)],[v9]),[v7 of v4],[v8]),[app2 of v5],[v7]),[term_of(app2)],[app2]),[v8 of(v1::nil)],[v9]),[v7 of app(v4,nil)],[v8]),[app2 of v5],[v7]),[term_of(app2)],[app2]),[v8 of nil],[v9]),[v7 of v4],[v8]),[app2 of v5],[v7]),[term_of(app2)],[app2])])),
   [
   ]) ext _208117
  ]) ext _208258
 ]) ext _208802,
 problem([m:int list,v1:int,v0:int list,v2:l:int list=>app(rev(l),rev(v0))=rev(app(v0,l))in int list]==>l:int list=>app(rev(l),app(rev(v0),v1::nil))=app(app(rev(l),rev(v0)),v1::nil)in int list,
 generalise(rev(v0),v3:int list),lambda(v3,lambda(v4,su(su(v6,[v5 of v4],[v6]),[v3 of rev(v0)],[v5])))of _207282,
 [problem([m:int list,v1:int,v0:int list,v2:l:int list=>app(rev(l),rev(v0))=rev(app(v0,l))in int list]==>v3:int list=>l:int list=>app(rev(l),app(v3,v1::nil))=app(app(rev(l),v3),v1::nil)in int list,
  ind_strat(induction(lemma(list_primitive)-[(l:int list)-v5::v4])then[base_case(sym_eval(normalize_term([reduction([1,1,1],[rev1,equ(int list,left)]),reduction([1,1],[app1,equ(int list,left)]),reduction([1,1,2,1],[rev1,equ(int list,left)]),reduction([1,2,1],[app1,equ(int list,left)])]))then[elementary(intro(new[v3])then[identity,wfftacs])]),step_case(ripple(direction_out,wave(direction_out,[1,1,2,1],[rev2,equ(int list,left)],[])then[wave(direction_out,[1,1,1],[rev2,equ(int list,left)],[])])then[idtac])]),lambda(v4,lambda(v3,lambda(v5,su(su(v7,[v6 of v4],[v7]),[v5 of v3],[v6]))of lambda(l,list_ind(l,lambda(v4,su(lambda(v3,su(v5,[v3 of v4],[v5]))of lambda(v4,su(su(lambda(v3,su(v5,[v3 of v4],[v5]))of lambda(v4,su(lambda(v3,su(v5,[v3 of v4],[v5]))of lambda(v4,su(su(lambda(v3,su(v5,[v3 of v4],[v5]))of lambda(v3,axiom),[app1 of v4],[v3]),[term_of(app1)],[app1])),[term_of(rev1)],[rev1])),[app1 of app(v4,v1::nil)],[v3]),[term_of(app1)],[app1])),[term_of(rev1)],[rev1])),[v5,v4,v6,lambda(v7,su(su(su(lambda(v3,su(v8,[v3 of v7],[v8]))of lambda(v7,su(su(su(lambda(v3,su(v8,[v3 of v7],[v8]))of _206699,[v3 of v4],[v8]),[rev2 of v5],[v3]),[term_of(rev2)],[rev2])),[v3 of v4],[v8]),[rev2 of v5],[v3]),[term_of(rev2)],[rev2]))])))),
  [problem([m:int list,v1:int,v0:int list,v2:l:int list=>app(rev(l),rev(v0))=rev(app(v0,l))in int list,l:int list,v5:int,v4:int list,v6:v3:int list=>app(rev(v4),app(v3,v1::nil))=app(app(rev(v4),v3),v1::nil)in int list]==>v3:int list=>app(app(rev(v4),v5::nil),app(v3,v1::nil))=app(app(app(rev(v4),v5::nil),v3),v1::nil)in int list,
   generalise(app(rev(v4),v5::nil),v7:int list),lambda(v3,lambda(v8,su(su(v9,[v7 of v8],[v9]),[v3 of app(rev(v4),v5::nil)],[v7])))of _206449,
   [problem([m:int list,v1:int,v0:int list,v2:l:int list=>app(rev(l),rev(v0))=rev(app(v0,l))in int list,l:int list,v5:int,v4:int list,v6:v3:int list=>app(rev(v4),app(v3,v1::nil))=app(app(rev(v4),v3),v1::nil)in int list]==>v7:int list=>v3:int list=>app(v7,app(v3,v1::nil))=app(app(v7,v3),v1::nil)in int list,
    ind_strat(induction(lemma(list_primitive)-[(v7:int list)-v9::v8])then[base_case(sym_eval(normalize_term([reduction([1,1],[app1,equ(int list,left)]),reduction([1,2,1],[app1,equ(int list,left)])]))then[elementary(intro(new[v3])then[identity,wfftacs])]),step_case(ripple(direction_out,wave(direction_out,[1,1],[app2,equ(int list,left)],[])then[wave(direction_out,[1,2,1],[app2,equ(int list,left)],[])then[wave(direction_out,[2,1],[app2,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,[2],v10)]))then elementary(intro(new[v3])then[identity,wfftacs])))])]),lambda(v7,list_ind(v7,lambda(v8,su(su(lambda(v3,su(v9,[v3 of v8],[v9]))of lambda(v8,su(su(lambda(v3,su(v9,[v3 of v8],[v9]))of lambda(v3,axiom),[app1 of v8],[v3]),[term_of(app1)],[app1])),[app1 of app(v8,v1::nil)],[v3]),[term_of(app1)],[app1])),[v9,v8,v10,lambda(v11,su(su(su(su(lambda(v3,su(v12,[v3 of v11],[v12]))of lambda(v11,su(su(su(su(lambda(v3,su(v12,[v3 of v11],[v12]))of lambda(v11,su(su(su(su(lambda(v3,su(v12,[v3 of v11],[v12]))of lambda(v11,su(lambda(v3,su(v12,[v3 of v11],[v12]))of lambda(v3,axiom),[v10 of v11],[v3])),[v12 of(v1::nil)],[v13]),[v3 of app(v8,v11)],[v12]),[app2 of v9],[v3]),[term_of(app2)],[app2])),[v12 of v11],[v13]),[v3 of v8],[v12]),[app2 of v9],[v3]),[term_of(app2)],[app2])),[v12 of app(v11,v1::nil)],[v13]),[v3 of v8],[v12]),[app2 of v9],[v3]),[term_of(app2)],[app2]))])),
    [
    ]) ext _206449
   ]) ext _206699
  ]) ext _207282
 ]) ext _208651
]).
