| bst(t), ((tr(r, t) * P))(H) ⊦ ⟪search_tree_insert(a; r, H)⟫ ⟨s := t.set; ordered_set_insert(a; s)⟩ ⟨t := t.insert(a)⟩ (s = t.set ∧ ((tr(r, t) * P))(H) ∧ bst(t)) |
((tr(r, t) * P))(H) ⊦ ⟪search_tree_insert(a; r, H)⟫ ((tr(r, t.insert(a)) * P))(H)
[Concretesimprules(()), Extraterms((rtPHa))]