changeset 673:a8e2bb44b843

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 23 Nov 2021 13:41:59 +0900
parents 3676e845d46f
children b17821aeeed8
files hoareBinaryTree.agda
diffstat 1 files changed, 8 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/hoareBinaryTree.agda	Tue Nov 23 11:32:35 2021 +0900
+++ b/hoareBinaryTree.agda	Tue Nov 23 13:41:59 2021 +0900
@@ -296,18 +296,15 @@
 ... | tri< a ¬b ¬c = next key value {tree1} (node key₁ value₁ repl right ) st Post  ≤-refl where
     Post : replacePR key value tree1 (node key₁ value₁ repl right ) st (λ _ _ _ → Lift n ⊤)
     Post with replacePR.si Pre  
-    ... | s-right lt si1 with  si-property1 si1   -- lt : suc key₂ ≤ key  -- not allowed
-    ... | refl = record { tree0 = replacePR.tree0 Pre; ti =  replacePR.ti  Pre ; si = si1; ri = repl04 } where
-       repl03 : replacedTree key value tree1 {!!}
-       repl03 =  r-right lt ( replacePR.ri  Pre)
-       repl04 :  replacedTree key value tree1 (node key₁ value₁ repl right)
-       repl04 = subst (λ k →  replacedTree key value tree1 k ) {!!} (r-right lt ( replacePR.ri  Pre))
-    Post | s-left lt si1 with  si-property1 si1
-    ... | refl = record { tree0 = replacePR.tree0 Pre; ti =  replacePR.ti  Pre ; si = si1; ri = repl06 } where
-       repl05 : replacedTree key value tree1 {!!}
+    ... | s-right lt si1 = {!!} -- property1 si1   -- lt : suc key₂ ≤ key  -- not allowed
+        --- lt     : suc key₂ ≤ key
+        --- a      : suc key ≤ key₁ < key₂
+    Post | s-left {t1} {t2} {t3} {key₂} {v1} lt si1 with  si-property1 si1
+    ... | eq = record { tree0 = replacePR.tree0 Pre; ti =  replacePR.ti  Pre ; si = {!!} ; ri = {!!} } where
+       repl05 : replacedTree key value {!!} (node key₂ v1 repl t3)
        repl05 =  r-left lt ( replacePR.ri  Pre)
-       repl06 :  replacedTree key value tree1 (node key₁ value₁ repl right)
-       repl06 = subst (λ k →  replacedTree key value tree1 k ) {!!} (r-left lt ( replacePR.ri  Pre))
+       repl06 :  replacedTree key value {!!} (node key₁ value₁ repl right)  -- node key₂ v1 (node key₁ value₁ left right) ≡ tree1
+       repl06 = subst (λ k →  replacedTree key value tree1 k ) {!!} {!!} -- (r-left lt ( replacePR.ri  Pre))
 ... | tri≈ ¬a b ¬c = next key value {{!!}} (node key₁ value  left right ) st {!!} ≤-refl
 ... | tri> ¬a ¬b c = next key value {{!!}} (node key₁ value₁ left tree ) st {!!} ≤-refl