/*  This is a proof plan for theorem:
    greatercons: []==>h:int=>t:int list=>greater(length(h::t),length(t))
    planner = dplan, clam_version(2.7.0), oyster_version(1.20)

    Time taken to find plan: 260ms
    Environment:
    []
 */

/* This is the pretty-printed form
base_case(...) then 
  generalise(length(t),v0:pnat) then 
    ind_strat([(v0:pnat)-s(v1)])

*/

proof_plan([]==>h:int=>t:int list=>greater(length(h::t),length(t)),greatercons,260,base_case(sym_eval(normalize_term([reduction([1],[length2,equ(pnat,left)])])))then[generalise(length(t),v0:pnat)then[ind_strat(induction(lemma(pnat_primitive)-[(v0:pnat)-s(v1)])then[base_case(sym_eval(normalize_term([reduction([],[greater2,equ(u(1),left)])]))then[elementary(intro(new[h])then[intro(new[t])then[istrue,wfftacs],wfftacs])]),step_case(ripple(direction_out,unblock_then_wave(direction_out,unblock_lazy([unblock(meta_ripple,unused,unused),idtac])then wave(direction_out,[],[greater3,equ(u(1),left)],[])))then[unblock_then_fertilize(strong,unblock_fertilize_lazy([idtac])then fertilize(strong,v2))])])]],dplan).
