evolution

The evolution of a Lean programmer

  1. 1
variable[LE α][DecidableLE α][Std.IsLinearOrder α][BEq α][LawfulBEq α](l:List α)abbrev I(n:α)|h::t=>ite (nh) (n::h::t) (h::I n t)|_=>[n]abbrev S:=l.foldr I []def D:List αProp|h::g::t=>hgD (g::t)|_=>True def A:(D lD (I n l))(n::l).Perm (I n l):=by induction l with|cons _ t=>cases t<;>grind[D]|_=>grind[D]def T:D (S l)l.Perm (S l):=by induction l with|cons _ t=>grind[A<|S t]|_=>grind[D]