# HG changeset patch # User nipkow # Date 1588628086 -7200 # Node ID a86e37f4ad6056d4f4acbcabae33b01f3469b51a # Parent a9df6686ed0e4b0b7319168233e6b0a4a370c6f6 tuned var. names diff -r a9df6686ed0e -r a86e37f4ad60 src/HOL/Data_Structures/AVL_Bal_Set.thy --- a/src/HOL/Data_Structures/AVL_Bal_Set.thy Mon May 04 16:28:39 2020 +0200 +++ b/src/HOL/Data_Structures/AVL_Bal_Set.thy Mon May 04 23:34:46 2020 +0200 @@ -40,28 +40,28 @@ "rot22 b = (if b=Lh then Rh else Bal)" fun balL :: "'a tree_bal change \ 'a \ bal \ 'a tree_bal \ 'a tree_bal change" where -"balL AB' bc b C = (case AB' of - Same AB \ Same (Node AB (bc,b) C) | - Diff AB \ (case b of - Bal \ Diff (Node AB (bc,Lh) C) | - Rh \ Same (Node AB (bc,Bal) C) | +"balL AB' c bc C = (case AB' of + Same AB \ Same (Node AB (c,bc) C) | + Diff AB \ (case bc of + Bal \ Diff (Node AB (c,Lh) C) | + Rh \ Same (Node AB (c,Bal) C) | Lh \ Same(case AB of - Node A (ab,Lh) B \ Node A (ab,Bal) (Node B (bc,Bal) C) | + Node A (ab,Lh) B \ Node A (ab,Bal) (Node B (c,Bal) C) | Node A (ab,Rh) B \ (case B of - Node B\<^sub>1 (bb, bB) B\<^sub>2 \ - Node (Node A (ab,rot21 bB) B\<^sub>1) (bb,Bal) (Node B\<^sub>2 (bc,rot22 bB) C)))))" + Node B\<^sub>1 (b, bb) B\<^sub>2 \ + Node (Node A (ab,rot21 bb) B\<^sub>1) (b,Bal) (Node B\<^sub>2 (c,rot22 bb) C)))))" fun balR :: "'a tree_bal \ 'a \ bal \ 'a tree_bal change \ 'a tree_bal change" where -"balR A ab b BC' = (case BC' of - Same BC \ Same (Node A (ab,b) BC) | - Diff BC \ (case b of - Bal \ Diff (Node A (ab,Rh) BC) | - Lh \ Same (Node A (ab,Bal) BC) | +"balR A a ba BC' = (case BC' of + Same BC \ Same (Node A (a,ba) BC) | + Diff BC \ (case ba of + Bal \ Diff (Node A (a,Rh) BC) | + Lh \ Same (Node A (a,Bal) BC) | Rh \ Same(case BC of - Node B (bc,Rh) C \ Node (Node A (ab,Bal) B) (bc,Bal) C | + Node B (bc,Rh) C \ Node (Node A (a,Bal) B) (bc,Bal) C | Node B (bc,Lh) C \ (case B of - Node B\<^sub>1 (bb, bB) B\<^sub>2 \ - Node (Node A (ab,rot21 bB) B\<^sub>1) (bb,Bal) (Node B\<^sub>2 (bc,rot22 bB) C)))))" + Node B\<^sub>1 (b, bb) B\<^sub>2 \ + Node (Node A (a,rot21 bb) B\<^sub>1) (b,Bal) (Node B\<^sub>2 (bc,rot22 bb) C)))))" fun insert :: "'a::linorder \ 'a tree_bal \ 'a tree_bal change" where "insert x Leaf = Diff(Node Leaf (x, Bal) Leaf)" | diff -r a9df6686ed0e -r a86e37f4ad60 src/HOL/Data_Structures/AVL_Set_Code.thy --- a/src/HOL/Data_Structures/AVL_Set_Code.thy Mon May 04 16:28:39 2020 +0200 +++ b/src/HOL/Data_Structures/AVL_Set_Code.thy Mon May 04 23:34:46 2020 +0200 @@ -26,25 +26,25 @@ "node l a r = Node l (a, max (ht l) (ht r) + 1) r" definition balL :: "'a avl_tree \ 'a \ 'a avl_tree \ 'a avl_tree" where -"balL AB b C = +"balL AB c C = (if ht AB = ht C + 2 then case AB of - Node A (a, _) B \ - if ht A \ ht B then node A a (node B b C) + Node A (ab, _) B \ + if ht A \ ht B then node A ab (node B c C) else case B of - Node B\<^sub>1 (ab, _) B\<^sub>2 \ node (node A a B\<^sub>1) ab (node B\<^sub>2 b C) - else node AB b C)" + Node B\<^sub>1 (b, _) B\<^sub>2 \ node (node A ab B\<^sub>1) b (node B\<^sub>2 c C) + else node AB c C)" definition balR :: "'a avl_tree \ 'a \ 'a avl_tree \ 'a avl_tree" where "balR A a BC = (if ht BC = ht A + 2 then case BC of - Node B (b, _) C \ - if ht B \ ht C then node (node A a B) b C + Node B (bc, _) C \ + if ht B \ ht C then node (node A a B) bc C else case B of - Node B\<^sub>1 (ab, _) B\<^sub>2 \ node (node A a B\<^sub>1) ab (node B\<^sub>2 b C) + Node B\<^sub>1 (b, _) B\<^sub>2 \ node (node A a B\<^sub>1) b (node B\<^sub>2 bc C) else node A a BC)" fun insert :: "'a::linorder \ 'a avl_tree \ 'a avl_tree" where