induct: fixes P :: "'b \<Rightarrow> 'b tree234 \<Rightarrow> bool"   and a0 :: "'b"   and a1 :: "'b tree234" assumes "\<And>k. P k \<langle>\<rangle>"   and "\<And>k p. P k \<langle>\<langle>\<rangle>, p, \<langle>\<rangle>\<rangle>"   and "\<And>k p q. P k \<langle>\<langle>\<rangle>, p, \<langle>\<rangle>, q, \<langle>\<rangle>\<rangle>"   and "\<And>k a b c. P k \<langle>\<langle>\<rangle>, a, \<langle>\<rangle>, b, \<langle>\<rangle>, c, \<langle>\<rangle>\<rangle>"   and "\<And>k v va vb a r. \<lbrakk>cmp k a = LT \<Longrightarrow> P k \<langle>v, va, vb\<rangle>; cmp k a = GT \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>\<langle>v, va, vb\<rangle>, a, r\<rangle>"   and "\<And>k v va vb vc vd a r. \<lbrakk>cmp k a = LT \<Longrightarrow> P k \<langle>v, va, vb, vc, vd\<rangle>; cmp k a = GT \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>\<langle>v, va, vb, vc, vd\<rangle>, a, r\<rangle>"   and "\<And>k v va vb vc vd ve vf a r. \<lbrakk>cmp k a = LT \<Longrightarrow> P k \<langle>v, va, vb, vc, vd, ve, vf\<rangle>; cmp k a = GT \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>\<langle>v, va, vb, vc, vd, ve, vf\<rangle>, a, r\<rangle>"   and "\<And>k l a v va vb. \<lbrakk>cmp k a = LT \<Longrightarrow> P k l; cmp k a = GT \<Longrightarrow> P k \<langle>v, va, vb\<rangle>\<rbrakk> \<Longrightarrow> P k \<langle>l, a, \<langle>v, va, vb\<rangle>\<rangle>"   and "\<And>k l a v va vb vc vd. \<lbrakk>cmp k a = LT \<Longrightarrow> P k l; cmp k a = GT \<Longrightarrow> P k \<langle>v, va, vb, vc, vd\<rangle>\<rbrakk> \<Longrightarrow> P k \<langle>l, a, \<langle>v, va, vb, vc, vd\<rangle>\<rangle>"   and "\<And>k l a v va vb vc vd ve vf. \<lbrakk>cmp k a = LT \<Longrightarrow> P k l; cmp k a = GT \<Longrightarrow> P k \<langle>v, va, vb, vc, vd, ve, vf\<rangle>\<rbrakk> \<Longrightarrow> P k \<langle>l, a, \<langle>v, va, vb, vc, vd, ve, vf\<rangle>\<rangle>"   and "\<And>k v va vb a m b r. \<lbrakk>cmp k a = LT \<Longrightarrow> P k \<langle>v, va, vb\<rangle>; \<lbrakk>cmp k a = GT; cmp k b = LT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k a = GT; cmp k b = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>\<langle>v, va, vb\<rangle>, a, m, b, r\<rangle>"   and "\<And>k v va vb vc vd a m b r. \<lbrakk>cmp k a = LT \<Longrightarrow> P k \<langle>v, va, vb, vc, vd\<rangle>; \<lbrakk>cmp k a = GT; cmp k b = LT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k a = GT; cmp k b = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>\<langle>v, va, vb, vc, vd\<rangle>, a, m, b, r\<rangle>"   and "\<And>k v va vb vc vd ve vf a m b r. \<lbrakk>cmp k a = LT \<Longrightarrow> P k \<langle>v, va, vb, vc, vd, ve, vf\<rangle>; \<lbrakk>cmp k a = GT; cmp k b = LT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k a = GT; cmp k b = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>\<langle>v, va, vb, vc, vd, ve, vf\<rangle>, a, m, b, r\<rangle>"   and "\<And>k l a v va vb b r. \<lbrakk>cmp k a = LT \<Longrightarrow> P k l; \<lbrakk>cmp k a = GT; cmp k b = LT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb\<rangle>; \<lbrakk>cmp k a = GT; cmp k b = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>l, a, \<langle>v, va, vb\<rangle>, b, r\<rangle>"   and "\<And>k l a v va vb vc vd b r. \<lbrakk>cmp k a = LT \<Longrightarrow> P k l; \<lbrakk>cmp k a = GT; cmp k b = LT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd\<rangle>; \<lbrakk>cmp k a = GT; cmp k b = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>l, a, \<langle>v, va, vb, vc, vd\<rangle>, b, r\<rangle>"   and "\<And>k l a v va vb vc vd ve vf b r. \<lbrakk>cmp k a = LT \<Longrightarrow> P k l; \<lbrakk>cmp k a = GT; cmp k b = LT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd, ve, vf\<rangle>; \<lbrakk>cmp k a = GT; cmp k b = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>l, a, \<langle>v, va, vb, vc, vd, ve, vf\<rangle>, b, r\<rangle>"   and "\<And>k l a m b v va vb. \<lbrakk>cmp k a = LT \<Longrightarrow> P k l; \<lbrakk>cmp k a = GT; cmp k b = LT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k a = GT; cmp k b = GT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb\<rangle>\<rbrakk> \<Longrightarrow> P k \<langle>l, a, m, b, \<langle>v, va, vb\<rangle>\<rangle>"   and "\<And>k l a m b v va vb vc vd. \<lbrakk>cmp k a = LT \<Longrightarrow> P k l; \<lbrakk>cmp k a = GT; cmp k b = LT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k a = GT; cmp k b = GT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd\<rangle>\<rbrakk> \<Longrightarrow> P k \<langle>l, a, m, b, \<langle>v, va, vb, vc, vd\<rangle>\<rangle>"   and "\<And>k l a m b v va vb vc vd ve vf. \<lbrakk>cmp k a = LT \<Longrightarrow> P k l; \<lbrakk>cmp k a = GT; cmp k b = LT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k a = GT; cmp k b = GT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd, ve, vf\<rangle>\<rbrakk> \<Longrightarrow> P k \<langle>l, a, m, b, \<langle>v, va, vb, vc, vd, ve, vf\<rangle>\<rangle>"   and "\<And>k v va vb a m b n c r. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb\<rangle>; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k n; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>\<langle>v, va, vb\<rangle>, a, m, b, n, c, r\<rangle>"   and "\<And>k v va vb vc vd a m b n c r. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd\<rangle>; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k n; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>\<langle>v, va, vb, vc, vd\<rangle>, a, m, b, n, c, r\<rangle>"   and "\<And>k v va vb vc vd ve vf a m b n c r. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd, ve, vf\<rangle>; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k n; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>\<langle>v, va, vb, vc, vd, ve, vf\<rangle>, a, m, b, n, c, r\<rangle>"   and "\<And>k l a v va vb b n c r. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k l; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb\<rangle>; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k n; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>l, a, \<langle>v, va, vb\<rangle>, b, n, c, r\<rangle>"   and "\<And>k l a v va vb vc vd b n c r. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k l; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd\<rangle>; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k n; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>l, a, \<langle>v, va, vb, vc, vd\<rangle>, b, n, c, r\<rangle>"   and "\<And>k l a v va vb vc vd ve vf b n c r. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k l; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd, ve, vf\<rangle>; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k n; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>l, a, \<langle>v, va, vb, vc, vd, ve, vf\<rangle>, b, n, c, r\<rangle>"   and "\<And>k l a m b v va vb c r. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k l; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb\<rangle>; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>l, a, m, b, \<langle>v, va, vb\<rangle>, c, r\<rangle>"   and "\<And>k l a m b v va vb vc vd c r. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k l; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd\<rangle>; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>l, a, m, b, \<langle>v, va, vb, vc, vd\<rangle>, c, r\<rangle>"   and "\<And>k l a m b v va vb vc vd ve vf c r. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k l; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd, ve, vf\<rangle>; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k r\<rbrakk> \<Longrightarrow> P k \<langle>l, a, m, b, \<langle>v, va, vb, vc, vd, ve, vf\<rangle>, c, r\<rangle>"   and "\<And>k l a m b n c v va vb. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k l; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k n; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb\<rangle>\<rbrakk> \<Longrightarrow> P k \<langle>l, a, m, b, n, c, \<langle>v, va, vb\<rangle>\<rangle>"   and "\<And>k l a m b n c v va vb vc vd. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k l; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k n; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd\<rangle>\<rbrakk> \<Longrightarrow> P k \<langle>l, a, m, b, n, c, \<langle>v, va, vb, vc, vd\<rangle>\<rangle>"   and "\<And>k l a m b n c v va vb vc vd ve vf. \<lbrakk>\<lbrakk>cmp k b = LT; cmp k a = LT\<rbrakk> \<Longrightarrow> P k l; \<lbrakk>cmp k b = LT; cmp k a = GT\<rbrakk> \<Longrightarrow> P k m; \<lbrakk>cmp k b = GT; cmp k c = LT\<rbrakk> \<Longrightarrow> P k n; \<lbrakk>cmp k b = GT; cmp k c = GT\<rbrakk> \<Longrightarrow> P k \<langle>v, va, vb, vc, vd, ve, vf\<rangle>\<rbrakk> \<Longrightarrow> P k \<langle>l, a, m, b, n, c, \<langle>v, va, vb, vc, vd, ve, vf\<rangle>\<rangle>" shows "P a0 a1"