equal
deleted
inserted
replaced
175 |
175 |
176 (* replaced MKT lrn lrl lrr by MKT lrr lrl *) |
176 (* replaced MKT lrn lrl lrr by MKT lrr lrl *) |
177 fun l_bal where |
177 fun l_bal where |
178 "l_bal(n, MKT ln ll lr h, r) = |
178 "l_bal(n, MKT ln ll lr h, r) = |
179 (if ht ll < ht lr |
179 (if ht ll < ht lr |
180 then case lr of ET \<Rightarrow> ET (* impossible *) |
180 then case lr of ET \<Rightarrow> ET \<comment> \<open>impossible\<close> |
181 | MKT lrn lrr lrl lrh \<Rightarrow> |
181 | MKT lrn lrr lrl lrh \<Rightarrow> |
182 mkt lrn (mkt ln ll lrl) (mkt n lrr r) |
182 mkt lrn (mkt ln ll lrl) (mkt n lrr r) |
183 else mkt ln ll (mkt n lr r))" |
183 else mkt ln ll (mkt n lr r))" |
184 |
184 |
185 fun r_bal where |
185 fun r_bal where |
186 "r_bal(n, l, MKT rn rl rr h) = |
186 "r_bal(n, l, MKT rn rl rr h) = |
187 (if ht rl > ht rr |
187 (if ht rl > ht rr |
188 then case rl of ET \<Rightarrow> ET (* impossible *) |
188 then case rl of ET \<Rightarrow> ET \<comment> \<open>impossible\<close> |
189 | MKT rln rll rlr h \<Rightarrow> mkt rln (mkt n l rll) (mkt rn rlr rr) |
189 | MKT rln rll rlr h \<Rightarrow> mkt rln (mkt n l rll) (mkt rn rlr rr) |
190 else mkt rn (mkt n l rl) rr)" |
190 else mkt rn (mkt n l rl) rr)" |
191 |
191 |
192 primrec insrt :: "'a::order \<Rightarrow> 'a tree \<Rightarrow> 'a tree" |
192 primrec insrt :: "'a::order \<Rightarrow> 'a tree \<Rightarrow> 'a tree" |
193 where |
193 where |