src/HOL/Quickcheck_Examples/Quickcheck_Narrowing_Examples.thy
changeset 67414 c46b3f9f79ea
parent 63167 0909deb8059b
child 67613 ce654b0e6d69
equal deleted inserted replaced
67413:2555713586c8 67414:c46b3f9f79ea
   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