list.rec_on : Π n, ?M_2 list.nil → (Π a a_1, ?M_2 a_1 → ?M_2 (a :: a_1)) → ?M_2 n